CSS基础

CSS简介

CSS 指层叠样式表(Cascading Style Sheets),层叠就是指多重样式定义被层叠为一层叠样式表。

CSS的作用在于就是设置我们的HTML标签的展示样式。
HTML标签,他既要定义网页元素,又要展示样式,但是HTML标签提供的属性,比较少,很多时候不能满足我们的要求。这个时候,CSS出现了,他给我们提供了,非常丰富的样式,能够满足我们的要求,那么以后,HTML标签只需要定义网页元素即可,至于这个标签展示成什么样子,交给CSS即可。

CSS与HTML配合使用的三种方式:

  1. 内联样式
  2. 内部样式
  3. 外部样式

常用的纯净标签

span标签

span标签为纯净的行标签(标签默认不占一整行,需要换行标签)
因为span为纯净标签,并未自带任何样式,所以我们经常通过css来定义标签属性。

  • 通过css设定删除线,效果等同于非纯净标签< s >< / s >:
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<s>abc</s>
		<span style="text-decoration: line-through;">纯净的行标签</span>
	</body>
</html>

在这里插入图片描述

div标签

div标签为纯净的块标签(标签默认占据一整行,不需要换行标签)
因为div为纯净标签,并未自带任何样式,所以我们经常通过css来定义标签属性。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<div id="" style="font-size: 100px;color: aqua;">
			你好
		</div>
		<div id="" style="font-size: 50px;color:chartreuse">
            CSS!
        </div>
	</body>
</html>

在这里插入图片描述

选择器

要使用css对HTML页面中的元素实现一对一,一对多或者多对一的控制,这就需要用到CSS选择器。
HTML页面中的元素就是通过CSS选择器进行控制的。

ID选择器

格式 :# 标签id{ }

匹配html标签的id属性,一次可以选择一个标签并定义标签属性。

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title></title>

    <style type="text/css">
        #div1 {
            height: 150px;
            width: 150px;
            border: 5px greenyellow solid;
            background-color: crimson
        }
        #div2 {
            height: 300px;
            width: 300px;
            border: 2px blue solid;
            background-color: pink;
        }
    </style>
</head>

<body>
    <div id="div1">

    </div>
    <div id="div2">

    </div>
</body>

</html>

在这里插入图片描述

类别选择器

格式 :.标签class{ }

匹配html标签的class属性,一次可以选择多个相同类属性的标签并定义标签属性。

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title></title>

    <style type="text/css">
        .div{
            height: 200px;
            width: 300px;
            border: 5px red solid;
            background-color: greenyellow;
        }
    </style>
</head>

<body>
    <div id="div1" class="div">

    </div>
    <div id="div2" class="div">

    </div>
</body>

</html>

在这里插入图片描述

标签选择器

格式 :标签名{ }

匹配html标签名,一次可以选择多个相同的标签并定义标签属性。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			h2{
				color: rgb(55, 37, 223);
			}
            h3{
                color: rgb(223, 35, 44)
            }
			
		</style>
	</head>
	<body>
        <h2>大标题</h2>
        <h3>小标题</h3>
        <h2>大标题</h2>
        <h3>小标题</h3>
        <h2>大标题</h2>
        <h3>小标题</h3>
        <h2>大标题</h2>
        <h3>小标题</h3>
        <h2>大标题</h2>
        <h3>小标题</h3>
	</body>
</html>

在这里插入图片描述

选择器优先级

选择器的优先级:就是为了解决,多个选择器,出现属性控制冲突时,最终采取谁的设定。

内联样式>id选择器>类别选择器>标签名选择器

其他选择器

后代选择器

格式 :父元素 子元素...{ }

当标签存在嵌套关系时,可以将父元素放在前面,子元素放在后面,中间用空格隔开,匹配指定父元素中的所有对应子元素。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
        <title></title>
        <style>
        #div1 .div2 div{
            color: aqua
        }
        </style>
	</head>
	<body>
		<div id="div1">
            爷爷
            <div id="" class="div2">
                爸爸
                <div id="">儿子</div>
                <span>后代选择器</span>
                <div id="">孙子</div>
            </div>
        </div>
	</body>
</html>

在这里插入图片描述

子类选择器

格式: 父元素>子元素>...{}

和后代选择器的区别后代选择器可以直接匹配爷爷和孙子之间的所有元素,二子类选择器只能匹配父元素中的子元素,不能越级匹配。

属性选择器

格式:标签[属性]{}

根据元素是否存在对应属性来匹配对应元素。

<!DOCTYPE html>
<html>

<head>
    <meta charset="utf-8">
    <title></title>
    <style type="text/css">
    div[id]{
        color: skyblue;
    }
    div[class]{
        color: coral;
    }
    div[id=div3]{
        color: yellow;
    }
    </style>
</head>

<body>
    <div id="div1">有id的块标签</div>
    <div class="mydiv">class的块标签</div>
    <div id="div2">有id的块标签</div>
    <div id="div3">有id的块标签</div>
    <div id="div4">有id的块标签</div>
    <div id="div5">有id的块标签</div>
</body>

</html>

在这里插入图片描述

伪类选择器

格式·:标签:伪类{}

有时候还会需要用文档以外的其他条件来应用元素的样式,比如鼠标悬停等。这时候我们就需要用到伪类选择器。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			/* 链接状态 */
			a:link{
				color: #FF0000;
				
			}
			/* 鼠标悬浮状态 */
			a:hover{
				color: palegreen;
				
			}
			/* 按下鼠标的状态 */
			a:active{
				color: #FFFF00;
				
				
			}
			/* 访问过后的状态 */
			a:visited{
				color: plum;
				
			}
		</style>
		
	</head>
	<body>
		
		
		<a href="http://www.baidu.com">进入网站</a>
	</body>
</html>
  • 初始状态
    在这里插入图片描述
  • 鼠标悬停状态
    在这里插入图片描述
  • 按下状态
    在这里插入图片描述
  • 访问后状态
    在这里插入图片描述
相邻选择器

格式:子元素+相邻元素{}子元素~相邻元素{}

可以匹配同一父元素中其它相邻子元素。
"+“和”~"的区别在于:

  • "+"只能匹配到相邻的一个元素,若中间隔有不同种类的标签则之后的相邻元素无法匹配。
  • "~"可以匹配同一父元素中所有指定类型的相邻元素。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值