css笔记01

css笔记01

1. css样式

1.1 内联样式
(1)可以将css样式编写到元素的style属性中
将样式直接编写到style属性中,这种样式我们称为内敛样式
内联样式只对当前的元素中的内容起作用,内联样式不方便复用
内联样式属于结构与表现耦合,不方便后期维护,不推荐使用

             <p style="color:red; font-size:40px;">锄禾日当午,汗滴禾下土</p>

1.2 写在head标签中
也可以将css编写到head中的style标签里
将样式编写的style标签中,然后通过css选择器中指定元素
然后可以同时为这些元素一起设置样式,这样可以使样式进一步复用
将样式编写到style标签中,也可以使表现和结构进一步分离它,也是推荐的使用方式

            <style type="text/css">
                p{
                    color:red;
                    font-size:40px;
                }
        
            </style>

1.3 外部样式表
还可以将样式表编写在外部的css文件中,然后通过link标签将外部的css文件引入到当前页面中
这样外部文件中的css样式将会应用到当前的页面中
将css样式统一编写到外部的样式表中,完全使结构和表现分离,可以使样式表在不同的页面中使用
最大限度的使样式可以进行复用,将样式统一编写在样式表中,然后通过link标签引入,可以利用浏览器的缓存
加快用户的访问速度提高用户体验,所以在开发中我们最推荐的使用方式就是外部的css文件

       <link rel="stylesheet" type="text/css" href="style.css">

2.css注释
作用和html注释类似,只不过它必须编写在style标签中,或者在css文件中

            css语法:
                选择器 声明块

            选择器:
                - 通过选择器可以选中页面中指定的元素,
                    并且将声明块中的样式应用到选择器对应的元素上

            声明块:
                - 声明块紧跟在选择器的后边,使用一对{}括起来
                    声明块中实际上就是一组一组的名值对结构
                        这一组一组的名值对我们称为声明
                    在一个声明块中可以写多个声明,多个声明之间用;隔开
                    声明的样式名和样式值之间使用:来连接
       p{
            color:red;
            font-size:40px;
        }

3.块元素和内联元素

    	div就是一个块元素
    		所谓的块元素就是会独占一行的元素,无论他的内容有多少
    			他都会独占一行
    		p h1 h2 h3...
    		div这个标签没有任何语义,就是一个纯粹的块元素
    			并且不会为它里边的元素设置任何的默认样式
    		div元素主要用来对页面进行布局
    	
    	span是一个内联元素(行内元素)
    		所谓的行内元素,指的是只有自身大小的元素,不会占用一行
    		常见的内联元素:
    			a img iframe span
    		span 没有任何的意义,span标签专门用来选中文字,
    		  然后为文字设置样式

(1) 块元素主要用来做页面中的布局,内联元素主要用来选中文本设置样式
(2) 一般情况下只使用块元素去包含内联元素,而不使用内联元素去包含一个块元素
(3)a 元素可以包含任意元素
(4)p 元素不可以包含任何其他的块元素

4.常用选择器
4.1元素选择器
- 作用:通过元素选择器可以选择页面中的所有指定元素
- 语法:标签名{}

   为页面中所有p元素,设置一个字体颜色为红色
     p{
			color:red;
		}

4.2 id选择器
- 通过元素的id属性值选中唯一的一个元素
- 语法: #id属性值{}

		#p1{
			font-size: 20px;
		}

4.3 类选择器
- 通过元素的class属性值选中一组元素
- 语法:.class属性值{}

		.p2{
			color: yellow;
		}

4.4 通配选择器
- 它可以用来选中页面中的所有元素
- 语法: *{}

       *{
			color: red;
		}

4.5 选择器分组(并集选择器)
- 通过选择器分组可以同时选中多个选择器对应的元素
- 语法: 选择器1,选择器2,选择器N{}

 为id为p1的元素,class为p2的元素,还有h1同时设置一个背景颜色为绿色
 #p1, .p2, h1{
			background-color: green;
}

4.6 复合选择器(交集选择器)
- 作用:可以选中同时满足多个选择器的元素
- 语法:选择器1选择器2选择器N{}

为拥有class p3 的span 元素设置一个背景颜色为黄色
span.p3{
			background-color: red;
}
  • 对于id选择器来说,不建议使用复合选择器

4.7 元素之间的关系

  • 父元素:直接包含子元素的元素
  • 子元素:直接被父元素包含的元素
  • 祖先元素:直接或间接包含后代元素的元素,父元素也是祖先元素
  • 后代元素:直接或间接被祖先元素包含的元素,子元素也是后代元素
  • 兄弟元素:拥有相同父元素的元素叫兄弟元素

4.8 后代元素选择器
- 作用:
- 选中指定元素的指定后代元素
- 语法: 祖先元素 后代元素{}

 为id为d1的div中的span设置一个颜色为绿色
 #d1 span{
	   color: greenyellow;
 }

4.9 子元素选择器
- 作用:
- 选中指定父元素的指定子元素
- 语法:父元素 > 子元素

  • IE6 及以下的浏览器不支持子元素选择器

    div的子元素span设置一个背景颜色为黄色
      div > span{
      		background-color:yellow;
      }
    

2020.1.16

:first-child 可以选中第一个子元素
:last-child 可以选中最后一个子元素
:nth-child 可以选中任意位置的子元素
 - 该选择器后边可以指定一个参数,指定要选中第几个子元素

  • even 表示偶数

  • odd 表示奇数

          为第一个p标签设置一个背景颜色为黄色
          body > p:first-child{
      		background-color: yellow;
      	}
      	
      	为最后一个p标签设置一个背景颜色为黄色
      	p:last-child{
      		background-color: yellow;
      	}
      	p:nth-child(even){
      		background-color:yellow;
      	}
    

:first-of-type
:last-of-type
:nth-of-type

  • 和:first-child这些非常相似,而type是在当前类型的子元素中排列

        p:first-of-type{
      		background-color:yellow;
      	}
    

4.10 兄弟选择器
(1)为span后的一个p元素设置一个背景颜色为黄色
后一个兄弟元素选择器

  • 作用:可以选中一个元素后紧挨着的指定的兄弟元素

  • 语法:前一个 + 后一个

      span + p{
     		background-color:yellow;
     }
    

(2)选中后边的所有兄弟元素

  • 语法:前一个 + 后面所有

        span ~ p{
     		background-color:yellow;
     	}
    

4.11 否定伪类
(1)否定伪类:

  • 作用:可以从已选中的元素中剔除某些元素

  • 语法:
    :not(选择器)

     为所有的p元素设置一个背景颜色为黄色,
     除了class值为hello的
        p:not(.hello){
     		background-color: yellow;
     	}
    

2020.1.20

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值