我经常听说我不应该在HTML元素上使用id
属性来在CSS中进行样式设置。但总是这样吗?假设您的应用程序(ul
)中有多个列表具有类horizontal-list
。但是,您想为每个ul
应用一些独特的样式,然后您可以添加id
并像这样使用它吗?
#food .horizontal-list {
}
#food .horizontal-list li {
}
这里你只用它来分隔元素。或者你应该为每个唯一列表创建一个类。 “不要将id's
用于样式目的”仅适用于您这样使用它吗?
#food {
/* loads of attributes */
}
有人可以解释何时可以使用id?
答案 0 :(得分:6)
ID非常有用,你绝对应该使用它们。他们是 浏览器可以选择给定元素的最快方式。它们很有用 对于页内锚定,如果它们已经存在于标记中那么 将它们用作样式钩子。奇怪的是,它们也很完美 只要它们只是该ID的一个实例,就可以正确使用 任何给定的页面。
关于“选择者特异性”的争论充其量只是一个延伸 证明一个坏的规则。正确地编写你的CSS,你不会陷入困境 任何特异性陷阱。我可以指望我的手数 在为CSS编写CSS和HTML的6年中,这对我来说是一个问题 生活在各种不同类型和规模的网站上。
这条规则唯一可以被称为准确的是你正在使用 ID用于设计特定的HTML块,以便允许其使用 在网站的任何地方。例如,如果您使用它来设置HTML图库的样式 用户可以通过其CMS在任何页面上包含的小部件。他们可能会 在页面上指定多个。但是,这是唯一的一次 这是一个问题。
你在示例中的方式是正确的,可以在你的css中多次声明它,你只是不想在元素上多次使用id
。
答案 1 :(得分:0)
您应该有基本布局的基类和其他类,以便对其进行其他更改。只有在需要引用元素时才应使用id,例如对于ajax请求或表单。使用多个类是没有问题的,并且使更改更容易。
还要记住:使用id两次会导致无效标记。
答案 2 :(得分:0)
id用于设置特定元素的样式,就像在您的示例中一样。它非常适合使用ID,只需要将样式限制为特定元素
答案 3 :(得分:0)
用于CSS样式的ID和类都非常好。
答案 4 :(得分:0)
来自http://webdesign.about.com/cs/css/qt/tipcssclassvsid.htm
有更长的解释如果符合以下条件,请使用类标记:
- 该样式用于整个文档的各个位置。
- 风格很一般。
醇>在以下情况下使用id标记:
- 该样式仅在文档中使用过一次。
- 该样式特定于文档的某个区域。
醇>请记住,id只能在任何HTML文档中出现一次。一旦 你已经使用了id,它不应该在那个页面上再次使用。