CSS——复合选择器、CSS特性、背景属性、显示模式

1、复合选择器

复合选择器:由两个或多个基础选择器,通过不同的方式组合而成。

作用:更准确、更高效的选择目标元素(标签)

1.1 后代选择器

后代选择器:选中某元素的后代元素

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

1.2 子代选择器

子代选择器:选中某元素的子代元素(最近的子级)。

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

1.3 并集选择器

并集选择器:选中多组标签设置相同的样式。

选择器写法:选择器1,选择器2,…,选择器N {CSS属性},选择器之间用 , 隔开

1.4 交集选择器-了解

交集选择器:选中同时满足多个条件的元素。

选择器写法:选择器1选择器2 {CSS属性},选择器之间连写,没有任何符合

注意:如果交集选择器中有标签选择器,标签选择器必须写在最前面。

1.5 伪类选择器

伪类选择器:伪类表示元素状态,选中元素的某个状态设置样式

鼠标悬停状态:选择器 :hover {CSS属性}

任何标签都可以设置鼠标悬停的状态。

1.6 伪类-超链接(拓展)

超链接一共有四个状态

提示:如果要给超链接设置以上四个状态,需要按 LVHA 的顺序书写。

2、CSS特性

CSS特性:继承性、层叠性、优先级

2.1 继承性

继承性:子级默认继承父级的文字控制属性

如果标签自己有样式则生效自己的样式,不继承

2.2 层叠性

特点:

  • 相同的属性会覆盖:后面的CSS属性覆盖前面的CSS属性
  • 不同的属性会叠加:不同的CSS属性都生效

2.3 优先级

优先级:也叫权重,当一个标签使用了多种选择器时,基于不同种类的选择器的匹配规则。

规则:选择器优先级高的样式生效

公式:通配符选择器 < 标签选择器 < id选择器 < 行内样式 < !important(选中标签的范围越大,优先级越低)

!important提取功能,提高权重/优先级到 最高 ,慎用

2.3.1 优先级-叠加计算规则

叠加计算:如果是复合选择器,则需要权重叠加计算

公式:(每一级之间不存在进位)

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

规则:

  • 从左向右依次比较选个数,同一级个数多的优先级高,如果个数相同,则向后比较
  • !important权重最高
  • 继承权重最低

3、Emment写法

Emment写法:代码的简写方式,输入缩写 VS code会自动生成对应的代码

HTML:

CSS:大多数简写方式为属性单词的首字母

4、背景属性

4.1 背景图

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

属性名:background-image(bgi)

属性值:url(背景图URL)

默认效果是平铺的

4.2 背景图平铺方式

属性名:background-repeat(bgr)

属性值:

4.3 背景图位置

属性名:background-position(bgp)

属性值:水平方向位置 垂直方向位置

关键字:

坐标(数字+px,正负都可以)

  • 水平:正数向右;负数向左
  • 垂直:正数向下;负数向上

提示:

  • 关键字取值方式写法,可以颠倒取值顺序
  • 可以只写一个关键字,另一个方向默认为居中;数字只写一个值表示水平方向,垂直方向为居中。

4.4 背景图缩放

作用:设置背景图大小

属性名:background-size(bgz)

常用属性值:

  • 关键字
    • cover:等比例缩放背景图片以完全覆盖背景区,可能背景图片部分看不见
    • contain:等比例缩放背景图片以完全装入背景区,可能背景区部分空白
  • 百分比:根据盒子尺寸计算图片大小
  • 数字+单位(例如:px)

4.5 背景图固定

作用:背景不会随着元素的内容滚动

属性名:background-attachment(bga)

属性值:fixed

4.6 背景复合属性

属性名:background(bg)

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

5、显示模式

显示模式:标签(元素)的显示方式

作用:布局网页的时候,根据标签的显示模式选择合适的标签摆放内容。

块级元素:

  • 独占一行
  • 宽度默认是父级的100%
  • 添加宽高属性生效

行内元素:

  • 一行可以显示多个
  • 设置宽高属性不生效
  • 宽高尺寸由内容撑开

行内块元素:

  • 一行可以显示多个
  • 设置宽高属性生效
  • 宽高尺寸也可以由内容撑开

5.1 转换显示模式

属性名:display

属性值:

综合案例一:热词

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        /* 默认效果 */
        a {
            display: block;
            width: 200px;
            height: 80px;
            background-color: #3064bb;
            color: #fff;
            text-decoration: none;
            text-align: center;
            line-height: 80px;
            font-size: 18px;
        }

        /* 鼠标悬停的效果 */
        a:hover {
            background-color: #608dd9;
        }
    </style>
</head>
<body>
    <a href="#">HTML</a>
    <a href="#">CSS</a>
    <a href="#">JavaScript</a>
    <a href="#">Vue</a>
    <a href="#">React</a>
</body>
</html>

综合案例二-banner效果

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .banner {
            height: 500px;
            background-color: #f3f3f4;
            background-image: url(../photo/bk.png);
            background-repeat: no-repeat;
            background-position: left bottom;

            /* 文字控制属性,继承给子级 */
            text-align: right;
            color:#333;
        }

        .banner h2 {
            font-size: 36px;
            font-weight: 400px;
            line-height: 100px;
        }

        .banner p {
            font-size: 20px;
        }
        
        .banner a {
            width: 125px;
            height: 40px;
            background-color: #f06b1f;

            display: inline-block;
            /* 转块级无法右对齐,因为块元素独占一行 */
            /* display: block; */

            text-align: center;
            line-height: 40px;
            color:#fff;
            text-decoration: none;
            font-size: 20px;
        }
    </style>
</head>
<body>
    <div class="banner">
        <h2>让创造产生价值</h2>
        <p>我们希望小游戏平台可以提供无限的可能性,让每一个创作者都可以将他们的才华和创意传递给用户</p>
        <a href="#">我要报名</a>
    </div>
</body>
</html>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/213736.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

使用WPF设计时绑定加快开发速度

知识来源&#xff1a;B站up主 香辣恐龙蛋 第一步 第二步

小心处理 C++ 静态变量中的陷阱

小心处理 C 静态变量中的陷阱 函数中的 static 变量 static 变量的作用 C 中 static 关键字的最后一个用途是在函数内创建局部变量&#xff0c;这些变量在其作用域内退出和进入时保持其值。函数内的 static 变量类似于只能从该函数访问的全局变量。static 变量的一个常见用途…

【合集】从Java基础到JavaWeb网络开发——Java基础文章合集 JavaWeb网络开发文章合集

前言 本篇博客是Java开发的合集文章&#xff0c;内容涵盖了Java基础相关的博客&#xff0c;JavaWeb开发相关的博客&#xff0c;并且给出了小项目的案例。 目录 前言引出Java基础1、基本数据类型2、数组和集合List3、运算符4、逻辑控制5、IO流6、面向对象初步7、数据库入门8、J…

微服务实战系列之EhCache

前言 书接前文&#xff0c;继续深耕。上一篇博主对Redis进行了入门级介绍&#xff0c;大体知道了Redis可以干什么以及怎么使用它。 今日博主继续带着大家学习如何使用EhCache&#xff0c;这是一款基于Java的缓存框架。 微服务实战系列之Redis微服务实战系列之Cache微服务实战…

uni-app 微信小程序之自定义navigationBar顶部导航栏

文章目录 1. 实现效果2. App.vue3. pages.json 配置自定义4. 顶部导航栏 使用 微信小程序自定义 navigationBar 顶部导航栏&#xff0c;兼容适配所有机型 1. 实现效果 2. App.vue 在App.vue 中&#xff0c;设置获取的 StatusBar&#xff0c;CustomBar 高度&#xff08;实现适配…

FL Studio 21.2.1.3859中文破解激活版2024免费下载安装图文教程

FL Studio 21.2.1.3859中文破解激活版是我见过更新迭代最快的宿主软件&#xff0c;没有之一。FL Studio12、FL Studio20、FL Studio21等等。有时甚至我刚刚下载好了最新版本&#xff0c;熟悉了新版本一些好用的操作&#xff0c;Fl Studio就又推出了更新的版本&#xff0c;而且F…

【附代码】Python函数性能测试(perfplot)

文章目录 相关文献测试电脑配置展开元素是list的list在numpy数组上映射函数的最有效方法数组numpy中唯一值的最有效频率计数方法反转numpy数组的最有效方法如何向 numpy 数组添加额外的列将 numpy 矩阵初始化为零或一以外的值 作者&#xff1a;小猪快跑 基础数学&计算数学&…

P2 Linux系统目录结构

前言 &#x1f3ac; 个人主页&#xff1a;ChenPi &#x1f43b;推荐专栏1: 《C_ChenPi的博客-CSDN博客》✨✨✨ &#x1f525; 推荐专栏2: 《Linux C应用编程&#xff08;概念类&#xff09;_ChenPi的博客-CSDN博客》✨✨✨ &#x1f6f8;推荐专…

【STL】手撕 string类

目录 1&#xff0c;string类框架 2&#xff0c;string&#xff08;构造&#xff09; 3&#xff0c;~string&#xff08;析构&#xff09; 4&#xff0c;swap&#xff08;交换&#xff09; 5&#xff0c;string&#xff08;拷贝构造&#xff09; 1&#xff0c;常规法 2&a…

【数据结构】AOV网与拓扑排序

一.AOV网的概念&#xff08;Activity On Vertex Network&#xff09; 在一个表示工程的有向图中&#xff0c;用顶点表示活动&#xff0c;用弧表示活动之间的优先关系。这样的有向图为顶点表示活动的网&#xff0c;我们称为AOV网&#xff08;Activity On Vertex Network&#xf…

【系统运维】Centos部署Haproxy+Keepalived+RabbitMQ高可用集群

1.RabbitMQ高可用集群方案 &#xff08;1&#xff09;RabbitMQ搭建集群的作用&#xff1a;提高可用性、可靠性和处理能力&#xff0c;确保系统提供高效的消息传递服务 高可用性&#xff1a;通过集群&#xff0c;即使其中一个节点发生故障&#xff0c;其他节点仍然可以继续提供…

C++ 学习笔记——C++纯虚函数和抽象类

C纯虚函数 什么是纯虚函数 1&#xff0c;纯虚函数只有函数名、参数、返回值类型。 2&#xff0c;纯虚函数的定义是在函数句首使用 virtual 关键字修饰&#xff0c;并且在句末增加 “ 0”。 virtual void funtion() 0;3&#xff0c;纯虚函数只有声明&#xff0c;基类可以存…

LLM 开发模式 RAG,MRKL,Re-Act,Plan-Execute 模式对比

本心、输入输出、结果 文章目录 LLM 开发模式 RAG&#xff0c;MRKL&#xff0c;Re-Act&#xff0c;Plan-Execute 模式对比前言RAG、MRKL、Re-Act和Plan-Execute模式的一些对比花有重开日&#xff0c;人无再少年实践是检验真理的唯一标准 LLM 开发模式 RAG&#xff0c;MRKL&…

JVM:强软弱虚四种引用

下面依次解释五种引用 一、强引用 把一个对象赋值给一个引用变量&#xff0c;就相当于把这个对象的强引用放到变量中。 只要对象可达&#xff0c; GC一定不会回收这个对象&#xff08;A1&#xff09; 二、软引用 当一个对象&#xff08;A2&#xff09;没有强引用时&#xff…

图文并茂教你模拟302接口,实现js中axios,fetch遇到302状态码后跳转的多种方案axios,fetch成功响应拦截302

前情提要 日常工作中&#xff0c;我们会使用fetch,或者axios发起请求来获取数据&#xff0c;但是当我们遇到一些特殊需求的时候&#xff0c;使用不同库之后&#xff0c;会得到不同的结果&#xff0c;例如302,308的状态码&#xff0c;那么我们应该怎么处理这两种情况呢&#xf…

C语言练习题

C语言练习题 文章目录 C语言练习题题目一题目二题目三题目四题目五题目六题目八 题目一 #include <stdio.h> //VS2022,默认对齐数为8字节 union Un {short s[7];int n; };int main() {printf("%zd", sizeof(union Un));return 0; }代码运行结果:> 16 sizeo…

Springboot依赖注入时重复初始化Bean的问题

前言 最近做项目&#xff0c;发现了springboot2.7.x在参数initiate的时候可以反复初始化&#xff0c;而且首次异常后&#xff0c;第二次成功居然也可以启动&#xff0c;通过查看源代码发现了问题根源&#xff0c;且在springboot高版本3.x&#xff0c;就出现了了Configuration的…

pytorch 中的dim 的作用范围

1. 二维矩阵时 不同的运算&#xff0c; dim 的作用域都是一样的思想&#xff1b; 当数据是二维矩阵时&#xff0c; 可以按照下面的思想理解&#xff1a; 对于矩阵&#xff1a; dim0 按列操作&#xff08;沿列向下&#xff09;。 dim1 按行操作&#xff08;跨行&#xff09;。 …

JavaSE学习路线及经验所谈

前言 一.学习框架二.学习经验 相信很多小白刚开始学习Java时&#xff0c;都是靠自己在网上搜集资料&#xff0c;并没有明确规划&#xff0c;不知道要学习什么内容&#xff0c;也不知道学习的重点是什么&#xff0c;那么这篇文章会给你一个大致的指引&#xff0c;当然也可以作为…
最新文章