问答详情
源自:6-1 CSS3选择器 属性选择器

css属性选择器 疑惑

<style>
    .columnNews{background:red}
</style>   
<style>
    a[style='background:red']{
       color:red;
    }
</style>

↑↑↑↑↑ 为什么这样,不起作用.

<style>
    a[style='background:red']{
       color:red;
    }
</style>
...
<a href="##" class="columnNews" style='background:red'>我的背景想变成红色</a>
...

↑↑↑↑↑ 但这样,却可以.


是因为属性选择器只支持行内样式?还是我的我获取内嵌样式的方法不对?

提问者:星星3394050 2017-02-27 16:16

个回答

  • 爱上慕婉清6262634
    2017-09-27 17:09:52

    你的第一种写法

    <style>

        a[style='background:red']{

           color:red;

        }

    </style>

    这个a[style='background:red']这条属性在a标签内部是找不到的,即对a进行检索的时候,匹配不到style='background:red'这串字段,所以无法执行a[style='background:red']{color:red}这行代码。

  • juymy
    2017-02-27 17:05:51

    是网页样式的识别先后顺序的问题,内嵌样式 >> 页内标签样式 >> 外链样式表样式|
    还有一个是遍历的问题,在同一级别,有重复的样式属性,后面的样式会覆盖掉前面的样式。