【问题标题】:CSS attibute selector vs CSS selector [duplicate]CSS属性选择器与CSS选择器[重复]
【发布时间】:2016-01-13 07:39:08
【问题描述】:

不知何故我很好奇,为什么 CSS 创建了两种访问属性的方式,我知道对于选择器,我们大多数人使用 :hover、:visited 等。但是有些选择器可以使用属性选择器访问,例如::disable、 :readonly 等

使用选择器代替 attr 选择器有什么好处吗?

之前谢谢:)

【问题讨论】:

    标签: css css-selectors


    【解决方案1】:

    您的意思有点不清楚,但这篇 Mozilla 文章可能会提供信息:

    Writing Efficient CSS (MDN)

    它很好地概述了选择器类型、何时有用以及选择器的一般性能。

    请注意,这篇文章已经过时了,但总的来说,基于 ID 的选择器非常有效,而基于属性的选择器效率较低(尽管许多人认为担心 css 选择器的效率是一个过早的优化) .

    但一般来说,不同的情况有不同类型的选择器,这取决于你的页面结构。


    另外,:hover:visited 不是属性选择器,它们是“伪类”选择器。

    :hover 适用于大多数元素,:visited 仅适用于超链接,:readonly 仅适用于输入框...

    在 CSS 术语中,“属性选择器”是一种基于 HTML 属性选择元素的选择器。例如,此属性选择器将匹配此元素:

    <input type="text" name="some-data" />
    
    [type="text"] {
        ...
    }
    

    【讨论】:

    • 用户似乎在询问使用伪类而不是属性选择器来根据相同的标准进行选择是否有任何好处或坏处。例如,:disabled 优于 [disabled]。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-17
    • 2019-07-30
    • 1970-01-01
    • 1970-01-01
    • 2018-06-05
    相关资源
    最近更新 更多