CSS选择器

元素选择器

<style>
    /* 选择所有div标签,字体变红色 */
    div{
        color: red;
    }
    /* 选择所有p标签,字体变蓝色 */
    p{
        color: blue;
    }
</style>
</head>
<body>
   <div>1</div>
   <div>2</div>
   <p>3</p>
   <p>4</p>
</body>

id选择器

<style>
    /* 选择所有id为div1标签,字体变红色 */
    #div1{
        color: red;
    }

    /* 选择所有id为div2标签,字体变蓝色 */
    #div2{
        color: blue;
    }
</style>
</head>
<body>
    <div id="div1">1</div>
    <div id="div2">2</div>
    <p id="div1">3</p>
    <p id="div2">4</p>
</body>

class选择器

<style>
    /* 选择所有class为div1标签,字体变红色 */
    .div1{
        color: red;
    }

    /* 选择所有calss为div2标签,字体变蓝色 */
    .div2{
        color: blue;
    }
</style>
</head>
<body>
    <div class="div1">1</div>
    <div class="div2">2</div>
    <p class="div1">3</p>
    <p class="div2">4</p>
</body>

并集选择器

<style>
    /* 并集不能有空格 */
    /* 选择元素名称为div并且class="box"的元素 */
    div.box {
        color: red;
    }
</style>
<body>
    <div class="box">1</div>
    <div>2</div>
    <p class="box">1</p>
    <p>2</p>
</body>

群组选择器

<style>
    /* 同时选择class="box",id="aa" 字体设为红色 */
    .box,#aa {
        color: red;
    } 
</style>
<body>
    <div class="box">1</div>
    <div>2</div>
    <p id="aa">1</p>
    <p>2</p>
</body>

后代选择器

<style>
    /* 将第一ul里的li的字体颜色变成红色 */
    .box1 li {
        color: red;
    }
    /* 将第一ul里的li的字体颜色变成蓝色 */
    .box2 li {
        color: blue;
    }
</style>
<body>
    <ul class="box1">
        <li>111</li>
        <li>111</li>
        <li>111</li>
        <li>111</li>
    </ul>
    <ul class="box2">
        <li>111</li>
        <li>111</li>
        <li>111</li>
        <li>111</li>
    </ul>
</body>

子代选择器

<style>
    /* 给class="box"的元素的儿子代元素为div的元素添加边框 */
    .box>div{
        border: 1px solid red;
    }
    /* 使用emmet语法添加子代元素 */
    
  </style>
<body>
  <div class="box">
    <div>
      xxxxx
      <div>yyyyy</div>
    </div>
    <p>ppppp</p>
  </div>
  <!-- 添加一个ul(class为list),含五个li(class为item) -->
  <ul class="list">
      <li class="item">1</li>
      <li class="item">2</li>
      <li class="item">3</li>
      <li class="item">4</li>
      <li class="item">5</li>
  </ul>
</body> 

兄弟选择器

<style>
  /* 给p标签的下一个为span的兄弟元素设为字体红色 */
  .pp + .span {
    color: red;
  }
  /* 没有效果,必须是相邻 */
  .pp + i {
    color: red;
  }
  /* 给所有的li元素添加上边框(第一个除外) */
  li + li {
    border-top: 1px solid #000;
  }
  .item + .item {
    color: blue;
  }
</style>
<body>
  <div class="box">
    <div class="div">div标签</div>
    <p class="pp">p标签</p>
    <span class="span">span标签</span>
    <i>i标签</i>
  </div>
  <ul>
    <li class="item">xxx</li>
    <li class="item">xxx</li>
    <li class="item">xxx</li>
    <li class="item">xxx</li>
    <li class="item">xxx</li>
  </ul>
</body>

伪类选择器

简单的伪类选择器
<style>
  /* 第一个li字体设为红色 */
  .list .item:nth-child(1){
    color: red;
  }
  /* 第二个li字体设为蓝色 */
  .list .item:nth-child(2){
    color: blue;
  }
  /* 第三个li字体设为绿色 */
  .list .item:nth-child(3){
    color: green;
  }
</style>
<body>
  <ul class="list">
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
  </ul>
</body>
奇数偶数伪类选择器
  <style>
  /* 将奇数li设为红色字体 */
  .list .item:nth-child(odd){
    color: red;
  }

  /* 将偶数li设为蓝色字体 */
  .list .item:nth-child(even){
    color: blue;
  }
</style>
<body>
  <ul class="list">
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
  </ul>
</body>
参数有规律变化的伪类选择器
  <style>
  /* 将1,4,7,10...的例设置为字体红色 */
  .list .item:nth-child(3n+1){
    color: red;
  }
  /* 将3,6,9,12...设置为绿色 */
  .list .item:nth-child(3n){
    color: green;
  }
</style>
<body>
  <ul class="list">
    <li class="item">xxxx</li>
   <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
  </ul>
</body>
第一个或最后一个的伪类选择器
  <style>
  /* 将第一个设为字体红色 */
  .list .item:last-child{
    color: red;
  }
 
  /* 将最后一个设为字体绿色 */
  .list .item:first-child{
    color: green;
  }
</style>
<body>
  <ul class="list">
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
    <li class="item">xxxx</li>
  </ul>
</body>

a相关的伪类选择器

  <style type="text/css">
    /* 未访问的链接 */
    a:link{
        color: aqua;
    }
    /* 已访问的链接 */
    a:visited{
        color: red;
    }
    /* 鼠标移动到元素上 */
    a:hover{
        color: blue;
    }
    /* 元素被点击时的颜色设置 */
    a:active{
        color: green;
    }
</style>
<body>
  <a href="http://www.baidu.com" target="_blank">百度</a>
  <a href="http://www.sina.com" target="_blank">新浪</a>
  <a href="http://zk.huruqing.cn" target="_blank">博客</a>
</body>

after+before伪类选择器

    <style>
  .box {
    width: 200px;
    height: 200px;
    border: 1px solid;
  }
  /* 在.box里面创建两个元素, 一个放在最前面, 一个放在最后面 */
  .box::before{
   content: 'xxxx';
 }
  .box::after{
   content:'aaaa';
 }
</style>
<body>
  <div class="box">
    <p>哈哈哈哈哈哈哈</p>
    <p>哈哈哈哈哈哈哈</p>
    <p>哈哈哈哈哈哈哈</p>
    <p>哈哈哈哈哈哈哈</p>
   <p>哈哈哈哈哈哈哈</p>
  </div>
</body>

CSS3新增的选择器

属性选择器

  <style>
    /*1. E[att] 选择具有att属性的E元素 */
    /* 选择属性含有value属性的元素 */
    *[value]{
        border-color: red;
    }
    /* 2.E[att="val"] 选择具有att属性且属性值等于val的E元素 */
    /* 只选择type=text 文本框的input 选取出来 */
   input[type=text]{
       color: blue;
   }
    /* 3.E[att^="val"]   匹配具有att属性且值以val开头的E元素 */
    /* 选择首先是div 然后 具有class属性  并且属性值 必须是icon开头的这些元素 */
   div[class^=icon]{
       color: aqua;
   }
    /* 4.E[att$="val"]  匹配具有att属性且值以val结尾的E元素 */
    /* 选择有class,且已data为结尾的元素 */
   *[class$=data]{
       color: brown;
   }
    /* 5.E[att*="val"] 匹配具有att属性且值中含有val的E元素 */
    /* 选择所有class包含e的li元素 */
    li[class*=e]{
        color: green;
    }
  </style>
<body>
    <input type="text" value="请输入查询条件" />
    <input type="text" />

    <input type="text" name="" id="" />
    <input type="password" name="" id="" />
    <div class="icon1">小图标1</div>
    <div class="icon2">小图标2</div>
    <div class="icon3">小图标3</div>
    <div class="icon4">小图标4</div>
    <div>我是打酱油的</div>

    <section class="icon1-data">我是安其拉</section>
    <section class="icon2-data">我是妲己</section>
    <section class="icon3-ico">我是甄姬</section>

    <div>
    <ul>
        <li class="icon1-data">1</li>
        <li class="icon1-time">2</li>
        <li class="icon1-week">3</li>
        <li class="icon1-mnth">4</li>
    </ul>
    </div>
</body>

兄弟选择器

  <style>
  /* 选择.box元素所有的p元素兄弟 */
  .box~p{
    color: aqua;
  }
  /* 选择.box元素的兄弟标签a标签 */
  .box~a{
    color: red;
  }
</style>
<body>
  <div class="box">divvvvvvvvv</div>
  <p>pppppppppppppp</p>
  <a href="#">xxxxx</a>
  <span>spannnnnn</span>
  <p>pppppppppppppp</p>
</body>

选择被勾选的标签

 <style>
  /* 已被选择的输入框的下一个span元素设置为字体红色 */
  input:checked+span{
    color: blue;
  }
</style>
<body>
  <span>选项1</span><input type="checkbox" /> 
  <span>选项2</span><input checked type="checkbox" />
  <span>选项3</span><input type="checkbox" />
  <span>12</span>
</body>

被选中的字体变色

 <style>
    /* 被选中的文字变黄色 */
    p::selection{
        color: yellow;
    }
</style>
<body>
  <p>xxxxx</p>
  <p>xxxxx</p>
  <p>xxxxx</p>
</body>
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,194评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,058评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,780评论 0 346
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,388评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,430评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,764评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,907评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,679评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,122评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,459评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,605评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,270评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,867评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,734评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,961评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,297评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,472评论 2 348

推荐阅读更多精彩内容

  • 1、CSS 选择器 1.1 、CSS基础选择器 标签选择器:所有标签名都可以当做选择器,比如body、h1、dl、...
    路遇惊喜阅读 1,717评论 0 3
  • 参考 目录 1. 基本选择器2. 层次(结构)选择器3. 属性选择器4. 伪类选择器5. 伪元素选择器 一,基本选...
    夜月行者阅读 797评论 0 1
  • 三、CSS选择器 1、传统2.1选择器 1)标签选择器和id选择器 标签选择器直接使用元素标签名当作选择器,将选择...
    柯灵Lying阅读 320评论 0 1
  • 首先先捋一捋都有哪些选择器 1、通配符选择器 举例 *{width:100px;} 2、元素选择器 (在 W...
    开心的胖纸阅读 295评论 0 0
  • id选择器 作用 根据指定的id名称找到对应的标签, 然后设置属性 格式 注意点: 每个HTML标签都可以设置id...
    光脚的鱼阅读 342评论 0 0