CSS基础1

本节大纲

  • CSS选择器,分组选择器、派生选择器、id选择器、class选择器、属性选择器
  • CSS3常用选择器

课程内容

CSS选择器

1、id选择器

选择设置id的元素

<style>
    #div1{
        color: red;
    }
</style>
<div>div</div>
<div id="div1">div1</div>
<div id="div2">div2</div>

查看代码

2、class选择器

选择有相同class的元素

<style>
    .c1{
        color: red;
    }
    .c2{
        background-color: yellow;
    }
</style>
<div class="c1 c2">c1, c2</div>
<div class="c2">c2</div>
<div class="c1">c1</div>

查看代码

3、属性选择器

以某个属性做为选择依据

input[type="text"]
{
  width:150px;
  display:block;
  margin-bottom:10px;
  background-color:yellow;
  font-family: Verdana, Arial;
}

input[type="button"]
{
  width:120px;
  margin-left:35px;
  display:block;
  font-family: Verdana, Arial;
}

查看代码

4、分组选择器

可以对选择器进行分组,被分组的选择器对应的元素就有相同的样式。 用逗号将需要分组的选择器分开。

<style>
    h1, .p1{
      color: red;
    }
</style>

h1和.p1都拥有相同的属性红色。

查看代码

5、派生选择器

选择某个元素下的子元素,通常用于作用域隔离,如

<style>
    .mod-box h1{
        color: red;
    }
</style>
<h1>这是大标题</h1>
<div class="mod-box">
    <h1>这是mod-box里的标题</h1>
    <div class="content">这是mod-box的内容</div>
</div>

让.mod-box里的h1变为红色,外面的h1不变色。

查看代码

CSS3常用选择器

  • :first-of-type 从一组中选择第一个元素
  • :last-of-type 从一组中选择最后一个元素

<style> 
    .div1 p:first-of-type
    {
        background:#ff0000;
    }
    .div1 p:last-of-type{
        font-weight: bold;
    }
</style>
<h1>这是标题</h1>
<div class="div1">
  <p>这是第一个段落。</p>
  <p>这是第二个段落。</p>
  <p>这是第三个段落。</p>
  <p>这是第四个段落。</p>
</div>

上例中.div1 p 选中四个p元素, .div1 p:first-of-type选择四个中的第一个。 查看代码

  • :hover 鼠标放置上的样式(ie6、7、8不支持a以外的标签使用:hover)
确定

<style>
    .btn{
      width: 60px;
      height: 20px;
      text-align: center;
      line-height: 20px;
      border: 1px solid blue;
      border-radius: 5px;
      cursor: pointer;
    }
    .btn:hover{
      background: blue;
      color: white;
    }
    .btn:active{
      background: lightblue;
    }
</style>
<div class="btn">按钮</div>
  • ::selection 选中文本后的效果,只能添加color、background、cursor 以及 outline

这里是段落

<style type="text/css">
::selection{
    color: blue;
}
</style>
<p>这里是段落</p>

查看代码

  • :before在元素前面添加内容, :after在元素后面添加内容(ie6、7不支持)

  <style>
    ul, li{
      list-style: none;
    }
    a{
      color: black;
      line-height: 20px;
      text-decoration: none;

    }
    a:before{
      content: '\f04';
      color: red;
    }
    a:after{
        content: ' hello';
        color: green;
    }
  </style>
  <ul class="list">
    <li><a href="#">链接1</a></li>
    <li><a href="#">链接2</a></li>
    <li><a href="#">链接3</a></li>
  </ul>

查看代码

课下练习

  1. 把本节课的代码看着标题重新一般