2015-10-15 54 views
4

我通常看到的HTML data-attribute(S)添加特定的值/参数的HTML使用它们“链接”按钮,模态对话框像引导件简单的“自定义属性”被打开等HTML“数据属性”与

<button type="button" class="close" data-dismiss="modal" aria-label="Close"> 

现在,我看到几乎有名的CSS框架,Kube,在其新版本中广泛使用简单的自定义属性如在以下几点:

<column cols="4">4</column> 

<span class="label label-black" outline bold>Black</span> 

其他动作示例可见,例如,here

我不知道这是可以使用简单的自定义属性,所以我试图寻找一些有关此来源,我发现只有this old similar question在其中几乎只有(可能)兼容性问题指出。

我很惊讶,像库贝一个CSS框架可以使用类似的解决方案,如果浏览器支持,可以如此“脆弱” ......

所以我的问题是:

  1. (=交叉兼容)是Kube的方法吗?
  2. 如果我只需要传递true/false值,我可以用简单的自定义安全地替换data-attribute吗?

这最后一个问题是更好地为例进行了说明,所以用<span class="foo" boo>Black</span>

+0

我对这个框架并不熟悉,但是在他们的网站上很快就会发现他们使用了古老的'class'。你能指出一个这样的用法的例子吗? –

+0

我编辑我的问题,并链接到特定的文档页面,您可以在其中找到应用示例 –

回答

5

使用数据属性替换<span class="foo" data-boo='true'>Black</span>。它们是:

  • 标准
  • 不会让一个验证扼流圈
  • 不会与可能被添加到标准在未来

属性相冲突......而你不知道如果你只是想检查它们是否存在于CSS属性选择器中,则必须给它们赋值......但是如果你想要的话,那么你应该使用额外的类来代替它。

+0

您是否认为您认为Kube的开发人员选择了一个“危险”地形移动? –

+0

是的。自定义属性很糟糕。它们只是具有更多风险的数据属性,这使得进行基本的自动化QA测试变得更加困难。 – Quentin