我爱编程

慕课网笔记3 : css 选择器 继承

2017-01-22  本文已影响39人  CAICL

慕课网: HTML+CSS基础课程


屏幕快照 2017-01-17 下午11.15.07.png

选择符:又称选择器,指明网页中要应用样式规则的元素,如本例中是网页中所有的段(p)的文字将变成蓝色,而其他的元素(如ol)不会受到影响。
声明:在英文大括号“{}”中的的就是声明,属性和值之间用英文冒号“:”分隔。当有多条声明时,中间可以英文分号“;”分隔

<p style="color:red">这里文字是红色。</p>
  1. 嵌入式: 嵌入式css样式必须写在<style></style>之间,并且一般情况下嵌入式css样式写在<head></head>之间.
<style type="text/css">
span{
color:red;
}
</style>
  1. 外部式 : 写在单独的文件中 .css为扩展名
    在<head>内(不是在<style>标签内)使用<link>标签将css样式文件链接到HTML文件内,
<link href="main.css" rel="stylesheet" type="text/css" />

注意:

  1. css样式文件名称以有意义的英文字母命名,如 main.css。
  1. rel="stylesheet" type="text/css" 是固定写法不可修改。
  2. <link>标签位置一般写在<head>标签之内。

<pre>
优先级 : 当遇到同名样式时
1. link链接的css文件权值相同 是下面的覆盖上面的. <em>ps: 权值在下面继承中解释</em>
2. 离html元素近的 样式覆盖远的
</pre>


一、 css选择器

每一条css样式声明(定义)由两部分组成

 div {
   background-color: red;
   font-size: 16px;
}
选择器 {
      样式;
 }
/*------------------------------------------------------------------*/
> 1. 在{}之前的部分就是“选择器”
> 2. “选择器”指明了{}中的“样式”的作用对象,也就是“样式”作用于网页中的哪些元素。
> 3. 标签选择器其实就是html代码中的标签

.class  {
          css样式代码;
}
#stress{
       color:red;
}

类 和 ID 选择器的区别

<span class="stress bigsize">  
// 类可以对同一个原素使用多个样式
//ID不可以这样使用
.food> li {
        border:1px solid red;
}
/*在类选择器后面用">" 指向子选择器  */

用于选择指定标签元素下的后辈元素

.first  span {
        color:red;
}

包含(后代)选择器 与 子选择器 的区别

通用选择器是功能最强大的选择器,它使用一个(*)号指定,它的作用是匹配html中所有标签元素

* {
    color:red;
}
/*代码使用html中任意标签元素字体颜色全部设置为红色*/

伪类选择符: 它允许给html不存在的标签(标签的某种状态)设置样式,比如说我们给html中一个标签元素的鼠标滑过的状态来设置字体颜色

   a: hover { 
        color:red;
}

关于伪选择符:
关于伪类选择符,到目前为止,可以兼容所有浏鉴器的“伪类选择符”就是< a> 标签上使用 :hover 了(其实伪类选择符还有很多,尤其是 css3 中,但是因为不能兼容所有浏览器,本教程只是讲了这一种最常用的)。其实 :hover 可以放在任意的标签上,比如说 p:hover,但是它们的兼容性也是很不好的,所以现在比较常用的还是 a:hover 的组合。

为html中多个标签元素设置同一个样式

h1, h2, h3, span {
      color : red;
}
.first,
#second> span{
      color:green;
}

二、继承

浏览器是根据权值来判断使用哪种css样式的,那种权值高的就使用哪种css样式

权值的规则:

p { 
  color:red;
} /*权值为1*/
p span{
  color:green;
} /*权值为1+1=2*/
.warning { 
  color:white;
} /*权值为10*/
p span.warning { 
  color:purple;
} /*权值为1+1+10=12*/
#footer .note p { 
  color:yellow;
} /*权值为100+10+1=111*/

层叠就是在html文件中对于同一个元素可以有多个css样式存在,当有相同权重的样式存在时,会根据这些css样式的前后顺序来决定,处于最后面的css样式会被应用 (后面的样式覆盖前面的)

p {color:red;}
p {color:green;}
<p class="first">三年级时,我还是一个<span>胆小如鼠</span>的小女孩。</p>
/*最后将显示字体颜色为绿色*/

当到html文件中的样式优先级让然为:

内联样式表(标签内部)> 嵌入样式表(当前文件中)> 外部样式表(外部文件中)。

ps:!important优先级样式是个例外,权值高于用户自己设置的样式。

将当前样式设置为最高权值

p {
     color:red!important;
}
/*注意:!important要写在分号的前面*/

注意:
!important要慎重使用, 能不用就不用。以避免使用过多,代码不好控制。

上一篇 下一篇

猜你喜欢

热点阅读