LOVEJOAN

文章 分类 评论
76 9 1453

站点介绍

人生是一场孤独的旅行,没有终点。。。

CSS基础三-选择器与背景样式

chuck 2023-07-10 388 16条评论 网页设计 html

首页 / 正文

CSS基础三

复合选择器

由多个基础选择器组合而成,用于准确选择目标标签的选择器。

分类:

  • 后代选择器

选择某元素的后代元素

写法:父选择器 子选择器 {CSS属性},父子选择器空格隔开。

    <style>
        span {
            color: blue;
        }
        div span{
            color: red;
        }
        div {
            text-align: center;
        }
    </style>
  • 子代选择器

只选择子代元素,最近的子级

写法:父选择器>子选择器 {CSS属性},父子选择器使用>隔开。

    <style>
        div > span {
            color: red;
        }
    </style>
  • 并集选择器

选中多组标签设置相同样式。

写法:选择器1,选择器2,选择器3 ... 选择器N {CSS属性},逗号分隔。

    <style>
        div ,
        p ,
        span {
            color: red;
        }
    </style>
  • 交集选择器

选中同时满足多个条件的元素。使用基础选择器和类选择器或id选择器连写,没有分隔。

<style>
    p#test {
        color: blue;
    }
    p.red {
        color: red;
    }
</style>




伪类选择器

表示元素状态,选中元素某个状态设置样式。

需要按照LVHA的顺序书写。

选择器作用
:link设置访问前属性
:visited设置访问后链接属性
:hover鼠标悬停状态属性
:active点击时(激活)状态属性
        a:link {
            color:blueviolet;
            text-decoration: none;
        }
        a:visited {
            color: green;
        }
        a:hover {
            color: red;
            text-decoration: underline;
        }
        a:active {
            color: orange;
        }

:hover 选择鼠标悬停状态。

    <style>
        a:hover {
            color: red;
            text-decoration: underline;
        }
        a {
            text-decoration: none;
        }
        .box:hover{
            color: blue;
        }
    </style>

CSS三大特性

  • 继承性

子级继承父级的文字控制属性(font-size,font-weight...)

子级的样式优先,如果自身标签有属性,则不继承父级属性。

  • 层叠性

相同的属性会覆盖,后面的CSS属性覆盖前面的

不同的属性会叠加,不同的CSS属性都会生效。

  • 优先级(权重)

不同选择器的权重。

通配符选择器<标签选择器<类选择器<id选择器<行内选择器<!important

选中标签的范围越大,优先级越低

        * {
            color: blue !important;
        }
/* !important添加在CSS属性中,提高到最高权重 */

优先级叠加计算:

(行内样式,id选择器个数,类选择器个数,标签选择器个数)

  1. 从左向右比较个数,同一级的优先级高,个数高则向后比较
  2. !important权重最高
  3. 继承权重最低

Emmet写法

HTML:

说明标签结构Emmet写法
类选择器<div class="box"></div>标签名.类名
id选择器<div id="box"></div>标签名#id名
同级标签<div></div><p></p>div+p
父子级标签<div><p></p></div>div>p
多个相同标签 span*3
有内容的标签<div>测试</div>div{测试}

CSS:

使用属性名首字母缩写。

多个属性使用+连接。

背景属性

属性:

描述属性
背景颜色background-color
背景图片background-image
背景图片平铺方式background-repeat
背景图片位置background-position
背景图片缩放background-size
背景图片固定background-attachment
背景图片复合属性background

背景图片:

网页中,使用背景图实现装饰性图片效果。

属性名:background-image(bgi)

属性值:url(文件路径)

        /* 默认平铺效果(复制),背景在最底层 */
        div {
            width: 200px;
            height: 200px;
            background-image: url(./1.png);
        }

背景图片平铺方式: 控制背景图片是否平铺

属性名:background-repeat(bgr)

属性值:

属性值效果
no-repeat不平铺
repeat平铺(默认)
repeat-x水平方向平铺
repeat-y垂直方向平铺

背景图片位置:

属性名:background-position(bgp)

属性值:

关键字写法:

关键字位置
left左侧
right右侧
center居中
top顶部
bottom底部

坐标法:

数字+px,正负都可。

        div {
            width: 400px;
            height: 400px;
            background-image: url(./1.png);
            background-repeat: no-repeat;
            background-color:pink;
            background-position: left bottom;
            background-position: right top;
            background-position: 200px 200px;
        }

背景图片缩放:

属性名:background-size(bgz)

属性值:

关键字

  • cover:等比例缩放背景图片以完全覆盖背景,可能背景图片部分看不见
  • contain:等比例缩放背景以完全装入背景区域,可能出现背景空白

百分比表示:根据合作尺寸计算图片大小

数字+单位:400px

背景图片固定:不会随着元素滚动

属性名:background-attachment(bga)

属性值:fixed

    <style>
        div {
            background-image: url(./bg.jpg);
            background-repeat: no-repeat;
            background-attachment: fixed;
        }
    </style>

背景复合属性:

属性名:background

属性值:背景色 背景图 平铺方式 位置 缩放 固定 (不区分顺序,空格隔开)

background: red url(./bg.jpg) center fixed no-repeat;

标签显示方式

  • 块级元素

独占一行

宽度默认是父级的100%

添加宽高生效

div标签

  • 行内元素

一行多个

宽度由内容决定

宽高无效

span标签

  • 行内块元素

默认尺寸和内容宽高相关

宽高生效

一行多个

img标签

转换显示模式

属性名:display

属性值:

属性值效果
block块级
inline-block行内块
inline行内

案例:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        * {
            margin: 0;
            padding: 0;
            font-family: 楷体;
        }
        nav {
            height: 500px;
            background-image: url(./bk.png);
            background-repeat: no-repeat;
            /* background-size: contain; */
            background-position: left 118px;
            background-color:    #F3F3F4;
            text-align: right;
        }
        h2 {
            line-height: 100px;
            font-size: 36px;
            font-weight: 400;
        }
        p {
            line-height: 40px;
            font-size: 20px;
        }
        div {
            text-align: right;
        }
        a {
            height: 40px;
            width: 125px;
            background-color: #ff6a00;;
            color: white;
            display: inline-block;
            line-height: 40px;
            text-decoration: none;
            text-align: center;
            font-size: 20px;
        }
        a:hover {
            background-color: #ff8c1f;
        }
    </style>
</head>
<body>
    <nav>
        <h2>让创造产生价值!</h2>
        <p>我们希望小游戏平台可以可以提供无限的可能性,让每一个创作者可以将他们的才华和创意传递给客户。</p>
        <div>
            <a href="#">我要报名</a>
        </div>
    </nav>
</body>
</html>

评论(16)

  1. 1 游客 2025-03-27 23:39 回复

    555

  2. 1 游客 2025-03-27 23:38 回复

    555YHXkpi8Q') OR 153=(SELECT 153 FROM PG_SLEEP(15))--

  3. 1 游客 2025-03-27 23:37 回复

    5550'XOR(555*if(now()=sysdate(),sleep(15),0))XOR'Z

  4. 1 游客 2025-03-27 23:36 回复

    555

  5. 1 游客 2025-03-27 23:36 回复

    555

  6. 1 游客 2025-03-27 23:36 回复

    555

  7. 1 游客 2025-03-27 23:35 回复

    555

  8. 1 游客 2025-03-27 23:34 回复

    555

  9. 1 游客 2025-03-27 23:33 回复

    555

  10. @@6biwD 游客 2025-03-27 23:31 回复

    555

  11. 11RwTvQ3z'; waitfor delay '0:0:15' -- 游客 2025-03-27 23:29 回复

    555

  12. 1-1; waitfor delay '0:0:15' -- 游客 2025-03-27 23:28 回复

    555

  13. 1 游客 2025-03-27 23:26 回复

    555

  14. 1 游客 2025-03-27 23:25 回复

    555

  15. 1 游客 2025-03-27 23:23 回复

    555

  16. 1 游客 2025-03-27 23:22 回复

    555

热门文章

最新评论

  • 1

    555fulIdEqZ' OR 160=(SELECT 160 FROM PG_SLEEP(15))--

  • 1

    555-1)) OR 58=(SELECT 58 FROM PG_SLEEP(15))--

  • 1

    555-1) OR 13=(SELECT 13 FROM PG_SLEEP(15))--

  • 1

    555-1 OR 475=(SELECT 475 FROM PG_SLEEP(15))--

  • 1

    555

  • 1

    555

  • 1

    5554FobGRsu') OR 696=(SELECT 696 FROM PG_SLEEP(15))--

  • 1

    555C9F0upP1' OR 504=(SELECT 504 FROM PG_SLEEP(15))--

  • 1

    555

  • 1-1; waitfor delay '0:0:15' --

    555

日历

2025年05月

    123
45678910
11121314151617
18192021222324
25262728293031

文章目录