CSS
CSS😀
1.CSS简介😶🌫️
CSS (Cascading Style Sheets,层叠样式表),是一种用来为结构化文档(如 HTML 文档或 XML 应用)添加样式(字体、间距和颜色等)的计算机语言,是前端技术中十分重要的一环🐶。
通过使用 CSS 我们可以大大提升网页开发的工作效率!
2.CSS语法介绍😗
CSS 规则由两个主要的部分构成:选择器
,以及一条或多条声明
:
选择器
通常是您需要改变样式的 HTML 元素
。
每条声明
由一个属性
和一个值
组成。
属性(property)
是您希望设置的样式属性(style attribute)。每个属性有一个值。属性和值被冒号分开。😏
3.声明🫥
CSS声明
总是以分号;
结束,声明
总以大括号{}
括起来:
1 |
|
为了让CSS可读性更强,你可以每行只描述一个属性:
1 |
|
4.选择器🌟
CSS选择器用于选择你想要为其应用样式的HTML元素。以下是一些常见的CSS选择器及其描述:
通用选择器 (
*
):
选择页面上的所有元素。1
2
3* {
color: red;
}类型选择器 (或元素选择器):
选择所有给定的HTML元素类型。1
2
3p {
color: blue;
}类选择器 (
.
):
选择所有带有指定类属性的元素。1
2
3.highlight {
background-color: yellow;
}ID选择器 (
#
):
选择带有指定ID属性的元素。1
2
3#header {
background-color: gray;
}后代选择器 (空格):
选择特定元素的后代。1
2
3article p {
font-size: 18px;
}子元素选择器 (
>
):
选择特定元素的直接子元素。1
2
3ul > li {
list-style-type: square;
}相邻兄弟选择器 (
+
):
选择紧接在另一个元素后的元素。1
2
3h2 + p {
font-weight: bold;
}属性选择器:
选择带有指定属性的元素。1
2
3input[type="text"] {
border: 1px solid black;
}伪类选择器 (
:
):
选择元素的特定状态。1
2
3a:hover {
color: green;
}伪元素选择器 (
::
):
选择元素的特定部分,如首行或首字母。1
2
3p::first-line {
font-weight: bold;
}分组选择器:
将多个选择器分组以应用相同的样式。1
2
3h1, h2, h3 {
font-family: Arial, sans-serif;
}
这只是CSS选择器的基础。随着CSS的发展,还有许多其他的选择器和组合方法可以使用,以满足更复杂的选择需求。
5.选择器权重😍
在CSS中,选择器的权重(或优先级)决定了哪些样式规则将被应用到元素上,特别是当多个规则与同一个元素匹配时。选择器的权重是基于其类型和结构来计算的。
以下是选择器权重的基本规则:
类型选择器和伪元素 (例如
h1
,::before
):- 权重: 0-0-1 => 1
类选择器、属性选择器和伪类 (例如
.classname
,[type="text"]
,:hover
):- 权重: 0-1-0 => 2
ID选择器 (例如
#idname
):- 权重: 1-0-0 => 4
内联样式 (直接在HTML元素上使用的
style
属性):- 权重: 1-0-0-0 => infinite
通用选择器 (
*
), 组合符 (例如+
,>
,~
, 空格) 和 否定伪类 (:not()
) 对权重没有影响。重要性 (
!important
): 如果在样式声明后添加了!important
,则该声明的权重会超过其他任何声明。但是,如果有多个!important
声明,那么上述权重规则仍然适用于确定哪个声明最重要。
权重计算示例:
#id
: 1-0-0.class
: 0-1-0h1
: 0-0-1#id .class h1
: 1-1-1 => 7
当多个选择器目标同一个元素并有冲突的样式时,权重较高的选择器的样式将被应用。如果权重相同,那么在CSS文件中最后出现的规则将被应用。
为了避免权重问题和复杂性,建议尽量使用简单的选择器,并避免过度使用!important
。
6.基本属性
position : 定位 relative(默认) | absolute | fixed | sticky
display : 元素显示模式 inline | block | inline-block | flex | grid …
…