一、复合选择器
复合选择器是由两个或多个基础选择器,通过不同的方式组合而成的,目的是为了可以选择更准确更精细的目标元素标签。
1.并集选择器
并集选择器(css选择器分组)是各个选择器通过逗号连接而成的,任何形式的选择器(包括标签选择器、class类选择器,id选择器等),都可以作为并集选择器的一部分。
如果某些选择器定义的样式完全相同,或部分相同,就可以利用并集选择器为它们定义相同的CSS样式。
.con1{
color: green;
}
.con2{
color: pink;
}
/* 需要两个名字字体都加粗,字体大小都是32px */
/* 并集选择器 使用逗号连接*/
.con1,.con2{
font-size: 32px;
font-weight: 700;
}
2.后代选择器
-
用来选择元素或元素组的子孙后代。
-
其写法就是把外层标签写在前面,内层标签写在后面,中间用空格分隔,先写爷爷父亲,在写儿子孙子。
/* 后代选择器 用来选择元素或元素组进行精准选择
用空格隔开*/
ul li div span{
color: pink;
}
3.子代选择器
子元素选择器只能选择作为某元素子元素的元素。
-
子元素选择器只能选择作为某元素子元素(亲儿子)的元素。
-
其写法就是把父级标签写在前面,子级标签写在后面,中间跟一个
>
进行连接
/* 使用>表示子代选择器 */
ul li>span{
color: pink;
}
选择器 | 作用 | 特征 | 使用情况 | 隔开符号及用法 |
---|---|---|---|---|
后代选择器 | 用来选择元素后代 | 是选择所有的子孙后代 | 较多 | 符号是空格 .nav a |
并集选择器 | 选择某些相同样式的选择器 | 可以用于集体声明 | 较多 | 符号是逗号 .nav, .header |
子元素选择器 | 选择最近一级元素 | 只选亲儿子 | 较少 | 符号是> .nav>p |
二、 标签显示模式
HTML标签一般分为块标签和行内标签两种类型,它们也称块元素和行内元素。
2.1 块级元素
每个块元素通常都会独自占据一整行或多整行,可以对其设置宽度、高度、对齐等属性,常用于网页布局和网页结构的搭建。
- 独占一整行
- 可以设置宽和高 宽高由内容撑开
可以容纳内联元素和其他块元素。
常见的块元素有<h1>~<h6>、<p>、<div>、<ul>、<ol>、<li>、<hr>等,其中<div>标签是最典型的块元素。
2.2 行内元素
行内元素(内联元素)不占有独立的区域,仅仅靠自身的字体大小和图像尺寸来支撑结构,一般不可以设置宽度、高度、对齐等属性,常用于控制页面中文本的样式。
- 不独占一行
- 不可以设置宽和高
行内元素只能容纳文本或则其他行内元素。(a特殊)
高、宽无效,但水平方向的padding和margin可以设置,垂直方向的无效。
常见的行内元素有<a>、<strong>、<b>、<em>、<i>、<del>、<s>、<ins>、<u>、<span>等,其中<span>标签最典型的行内元素。
注意:
-
只有文字才能组成段落因此 p 里面不能放块级元素,同理还有这些标签h1,h2,h3,h4,h5,h6,dt,他们都是文字类块级标签,里面不能放其他块级元素。
-
链接里面不能再放链接。
2.3 行内块元素
- 不独占一行
- 可以设置宽高
常见的行内元素有 <img>、<input>、<button>等
元素模式 | 元素排列 | 设置样式 | 默认宽度 | 包含 |
---|---|---|---|---|
块级元素 | 一行只能放一个块级元素 | 可以设置宽度高度 | 容器的100% | 容器级可以包含任何标签 |
行内元素 | 一行可以放多个行内元素 | 不可以直接设置宽度高度 | 它本身内容的宽度 | 容纳文本或则其他行内元素 |
行内块元素 | 一行放多个行内块元素 | 可以设置宽度和高度 | 它本身内容的宽度 |
2.4 标签显示模式转换 display
块转行内 | display:inline; |
行内转块 | display:block; |
块、行内元素转换为行内块 | display: inline-block; |
三、背景样式
3.1 背景颜色 background-color
合法的颜色的名 | 比如:red ; |
十六进制值 | 比如:#ff0000 |
RGB 值 | 比如:rgb(255,0,0) |
/* 背景颜色 默认*/
background-color: transparent;
3.2 背景图片 background-image
/* 背景图片 路径*/
background-image: url(img/3.jpg);
3.3 图片重复方式 background-repeat
值 | 描述 |
---|---|
repeat | 默认。背景图像将在垂直方向和水平方向重复。 |
repeat-x | 背景图像将在水平方向重复。 |
repeat-y | 背景图像将在垂直方向重复。 |
no-repeat | 背景图像将仅显示一次。 |
3.4 图片位置 background-position
/* 背景定位 水平方向 竖直方向*/
/* 左left 右right 上top 下bottom */
background-position: 50px 100px; /*5rem 10rem */
/* 右下 */
background-position: right bottom;
/* 中间 */
background-position: center center;