<link>
和<a>
之间存在一些混淆。
我知道为了将CSS添加到HTML文档,我们使用<link>
标记,例如:
<link type="text/css" rel="stylesheet" href="/spinner/styles.css?ln=css" />
但是,我无法理解为什么我们不使用锚<a>
标签(因为它包含相同的必要属性),例如:
<a type="text/css" rel="stylesheet" href="/spinner/styles.css?ln=css" />
这两个标签是否可以互换?此外,如果这是可能的,那么我们如何选择一个而不是另一个?为什么?
更新
我有这种困惑,因为我在 The Complete Reference HTML&amp;关于rel
标记的<a>
属性的CSS 书,其中:
rel :对于包含
href
属性的锚点,此属性 指定目标对象与链接对象的关系。
所以我认为它可以执行与<link>
标记相同的功能。
答案 0 :(得分:32)
属性与它们所在的标记不同。
<link />
是empty element,即它内部没有任何内容。它所做的只是指定与另一个文档的关系。此外,<link>
标记仅用于<head>
部分。
<a></a>
不是一个空元素,它指定要在页面上创建的对象 - 如可点击的链接或图像 - 将用户带到其他位置。此标记仅用于<body>
部分。
因此,即使标签可以具有相同的属性,但这并不意味着它们会做同样的事情。
答案 1 :(得分:9)
您无法使用A标记将CSS添加到HTML文档,因为它用于在文档之间创建可单击的超链接。
但是如果您想创建允许用户下载css文件的链接,您可以这样做
<a type="text/css" rel="stylesheet" href="/spinner/styles.css?ln=css">Download css</a>
答案 2 :(得分:7)
Yup Jon是对的,
他的答案还有一个补充,
最终用户可以看到<a>insideanchortag</a>
中的任何内容
但是你无法在最终用户视图中看到<link />
数据,
它只在inspect元素中可见。