css属性选择器

接上篇css基础选择器,这部分主要总结一下css属性选择器的用法。

属性选择器的作用:对带有指定属性的HTML 元素设置样式。使用CSS3属性选择器,你可以只指定元素的某个属性,或者你还可以同时指定元素的某个属性和其对应的属性值。

话不多说:依然上代码。

.demo {
                margin: 50px auto;
                width: 300px;
                border: 1px solid #ccc;
                padding: 10px;
            }
            .over-flow{
                overflow: hidden;
            }

            li {
                float: left;
                height: 20px;
                line-height: 20px;
                width: 20px;
                -moz-border-radius: 10px;
                -webkit-border-radius: 10px;
                border-radius: 10px;
                text-align: center;
                background: aqua;
                color: green;
                margin-right: 5px;
                list-style: none;
            }
  <div class="demo">
                <ul class="over-flow">
                    <li id="first" class="first">1</li>
                    <li class="active important">2</li>
                    <li class="important items">3</li>
                    <li class="important">4</li>
                    <li class="items">5</li>
                    <li>6</li>
                    <li>7</li>
                    <li>8</li>
                    <li>9</li>
                    <li id="last" class="last">10</li>
                </ul>
            </div>

得到如下效果

1、 E[attr]:只使用属性名,但没有确定任何属性值;

 li[id]{
            background: red;
           }

选择li标签下面有id属性的元素,和这个属性值没关系

也可以使用多属性进行选择元素,如E[attr1][attr2], 这样只要是同时具有这两属性的元素都将被选中

   li[id][class]{
            background: red;
           }

2、E[attr="value"]

E[attr]只是选择了有对应的属性,并没有明确指其对应的属性值"value",而E[attr="value"]是指定了属性值“value”,从而缩小了选择 围,更能精确选择自己需要的元素。

  li[id="four"][class="important"]{
            background: red;
           }

E[attr="value"]属性选择器也可以多个属性并写,进一步缩小选择范围:

此功能易错点:属性和属性值必须完全匹配,特别是对于属性值是多个的形式时,属性值必须全部列出。

比如下面这段代码:

 li[id="two"][class="important"]{
            background: red;
           }

是没有效果的

只有全部列出属性值才可以,而且属性值的顺序也不能错。

 li[id="two"][class="active important"]{
            background: red;
           }

3、E[attr~="value"]:与E[attr="value"]不同的是,他们两者区别就是一个有“?”号,一个没有“?”号,E[attr="value"]是属性值需要完全匹配才会被选中,而

E[attr~="value"]则是属性值中只要有一个值匹配就可选中。

  li[class~="important"]{
            background: red;
           }

4、E[attr^="value"]指的是选择attr属性值以“value”开头的所有元素。

  li[class^="active"]{
            background: red;
           }

5、E[attr$="value"]如果明白了第四个属性选择器,那么这个选择器则刚好相反。

这个运用在给你一些特殊的链接加背景图片很方便的,比如说给pdf,png,doc等不同文件加上不同icon。

为了更好的说明,我们在结构中插入两个a连接

                     <li>8</li>
                    <li>9</li>
                    <li id="last" class="last">10</li>
                    <li> <a href="sites/file/test.jpg" class="links item" title="this is a link" lang="zh-cn">11</a></li>
                    <li><a href="sites/file/test.png" class="links item" target="_balnk" lang="zh-tw">12</a></li>
 li a[href$="jpg"]{
            background: red;
           }

a链接丑了一点,不过还是说明了问题。

6、E[attr*="value"]表示的是选择attr属性值中包含子串"value"的所有元素,

和E[attr~="value"]有相同的感觉。

 li[class*="important"]{
            background: red;
           }

7、E[attr|="value"]特定属性选择器,首先attr后面的是一个竖线“|”而不是l,这个选择器会选择attr属性值等于value或以value-开头的所有元素。

  li a[lang|="zh"]{
            background: red;
           }

至此,关于css属性选择器部分基本就这么多了,要说明的一点是,属性选择器除了IE6不支持外,其他的浏览器都能支持,

七种属性选择器中E[attr="value"]和E[attr*="value"]是最实用的,其中E[attr="value"]能帮我们定位不同类型的元素,特别是表单form元素的操作,比如说input[type="text"],input[type="checkbox"]等,而E[attr*="value"]能在网站中帮助我们匹配不同类型的文件,比如说你的网站上不同的文件类型的链接需要使用不同的icon图标,用来帮助你的网站提高用户体验,就像前面的实例,可以通过这个属性给".doc",".pdf",".png",".ppt"配置不同的icon图标。

下一节,主要总结下css选择器中第三部分。伪类选择器。

时间: 2024-11-10 15:48:25

css属性选择器的相关文章

CSS属性选择器

属性选择器 1 <!DOCTYPE html> 2 <html lang="zh-cn"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Document</title> 6 <link rel="stylesheet" type="text/css" href="./css/属性选择器.css&qu

IE7浏览器下CSS属性选择器二三事

一.为何专门说起IE7 以前,或者说数年前,我们从事桌面端网页开发的时候,基本上都还要兼顾IE6浏览器, 即使有些特性,IE7支持,我们也会忽略之.于是,我们会不自然地把IE6和IE7浏览器归为一路货色,研究的多半是两个浏览器共性的东西,比方说haslayout之类的. 但是,最近1~2年,至少我个人所从事的桌面PC项目都不需要管IE6浏览器(0.3%)了,但是,还是要关心IE7浏览器(3%+)的.虽然,我们有丰富的处理IE6浏览器的经验,但是,当我们不要管IE6浏览器的时候,我们前端技术的选型

css 属性选择器笔记

1.基本选择器: eg: *{margin:0;padding:0} p{color:black} .content{background:red;} #intro{padding-left:2em;} 2.多元素组合选择器 div p { color:#f00; } #nav li { display:inline; } #nav a { font-weight:bold; } div > strong { color:#f00; } h2 + p { color:#f00; } 三.CSS

前端学习 -- Css -- 属性选择器

属性选择器:根据元素的属性选择指定元素 语法:[属性名] 选取含有指定属性的元素 [属性名="属性值"]:选取属性值等于指定值的元素 [属性名^="属性值"]:选取属性值以指定内容开头的元素 [属性名$="属性值"]:选取属性值以指定内容结尾的元素 [属性名*="属性值"]:选取属性值中包含指定内容的元素 demo:(注:这么尴尬的诗句肯定不是我写的) <!DOCTYPE html> <html> &l

CSS属性选择器温故-4

1.属性选择器就是通过元素属性来找到元素 2.属性选择器语法 CSS3遵循了惯用的编码规则,通配符的使用提高了样式表的书写效率,也使CSS3的属性选择器更符合编码习惯 3.浏览器兼容性 CSS选择器总结:CSS选择器和jQuery的选择器非常相似,学好CSS选择器会让我们学习jQuery事半功倍

CSS 属性选择器(八)

一.属性选择器 属性选择使用中括号进行标识,中括号内包含属性名,属性值或者属性表达式 如h1[title],h1[title="Logon"], 二.属性选择器分类 2.1.匹配属性名 [class]{color:red} 作用于任何带有class属性的元素,不管理class的值是什么,也可以是其它元素的所有合法属性如: img[alt]{border:none}; 上面这个会作用于所有带有alt属性的img元素 a[href][title]{font-weight:bold};作用于

CSS 属性选择器详解

CSS 2 引入了属性选择器. 属性选择器可以根据元素的属性及属性值来选择元素. 简单属性选择 如果希望选择有某个属性的元素,而不论属性值是什么,可以使用简单属性选择器. 例子 1 如果您希望把包含标题(title)的所有元素变为红色,可以写作: *[title] {color:red;}

第45篇 CSS属性选择器

1,内置函数复习 1.1 reduce #reduce 从可迭代对象里面不断的取值累加 from functools import reduce li = [1,2,3,4,5,6] ret = reduce(lambda x,y:x+y,li) print(ret) res = reduce(lambda x,y:x+y,range(1,101)) print(res) 1.2 sorted 1.2.1 按照年龄进行排序 li = [ {'name':'gold','age':'40'}, {

CSS 属性选择器

对带有指定属性的 HTML 元素设置样式. 可以为拥有指定属性的 HTML 元素设置样式,而不仅限于 class 和 id 属性. 注释:只有在规定了 !DOCTYPE 时,IE7 和 IE8 才支持属性选择器.在 IE6 及更低的版本中,不支持属性选择. 属性选择器 下面的例子为带有 title 属性的所有元素设置样式: [title] { color:red; } 属性和值选择器 下面的例子为 title="W3School" 的所有元素设置样式: [title=W3School]

css属性选择器的使用

属性选择器 自定义属性选择器 原文地址:https://www.cnblogs.com/learning-python/p/10252654.html