0

HTML

<div data-foo> ... </div>

CSS

div[data-foo]{ ... }

这是一个好主意吗?有什么缺点吗?

我认为当我有数百个“foo”元素时,数据方法是有意义的,因为 HTML 标记大小会减小(每个元素 -3 个字符)。

4

2 回答 2

3
  • div[data-foo]旧 IE 不支持(IE6,请参见此处:http ://www.quirksmode.org/css/selectors/ )
  • div[data-foo]语义意义不大
  • class="foo"并且data-foo在 DEFLATE-d 时将占用大约相同的空间。如果您尚未将服务器设置为放气,则应该这样做。
  • class=foo仅比data-foo未压缩的字符长一个字符,并且是完全有效的 HTML。
于 2013-03-31T14:13:30.123 回答
1

这完全取决于您,例如元素必须具有不同的属性,因此您需要定义样式甚至重复一些样式,而不是我将使用一个我可以用于两者的类,而不是使用会限制我声明的属性选择器属性到具有该属性的元素,无论元素属性组合如何,您都可以自由使用类

.class { /* You can use this anywhere you need these properties */
   font-family: Arial;
   font-size: 13px;
}

因为这将限制为 ELEMENT-ATTRIBUTE 组合

div[data-menu] { /* This will LIMIT you to a combination of div 
                    element having an attribute called data-menu */
    font-family: Arial;
    font-size: 13px;
}

重要提示:特异性会让你一团糟

于 2013-03-31T14:08:03.410 回答