前端web入门-CSS-day04

简介: 前端web入门-CSS-day04

(创作不易,感谢有你,你的支持,就是我前行的最大动力,如果看完对你有帮助,请留下您的足迹)

目录

复合选择器  

后代选择器

子代选择器

并集选择器

交集选择器

伪类选择器

伪类-超链接(拓展)

CSS 特性

继承性

层叠性

优先级

优先级 – 叠加计算规则

Emmet 写法

背景属性

背景图

背景图平铺方式

背景图位置

背景图缩放

背景图固定

背景复合属性

显示模式

转换显示模式


复合选择器  

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

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

后代选择器

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

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

<!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>
        /* 后代选择器,选中所有后代 */
        div span 
        {
            color: red;
        }
    </style>
</head>
<body>
    <span>span标签</span>
    <div>
        <span>div的儿子</span>
        <p>
            <span>div的孙子</span>
        </p>
    </div>
</body>
</html>

网页显示为:                                                                        

子代选择器

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

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

<!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>
        div > span 
        {
            color: red;
        }
    </style>
</head>
<body>
    <div>
        <span>div的儿子</span>
        <p>
            <span>div的孙子</span>
        </p>
    </div>
</body>
</html>

网页显示为:                                                                      

并集选择器

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

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

<!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>
        div,p,span
        {
            color: red;
        }
    </style>
</head>
<body>
    <div>111</div>
    <p>222</p>
    <span>333</span>
</body>
</html>

网页显示为:                                                                                      

交集选择器

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

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

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

<!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>
        p.a
        {
            color: red;
        }
    </style>
</head>
<body>
    <p class="a">111</p>
    <p>222</p>
    <div class="a">333</div>
</body>
</html>

网页显示为:                                                                                      

伪类选择器

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

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

伪类-超链接(拓展)

超链接一共有四个状态

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

CSS 特性

CSS特性:化简代码 / 定位问题,并解决问题

• 继承性

• 层叠性

• 优先级

继承性

继承性:子级默认继承父级的文字控制属性。(选择器选中父级,则父级内部子级全部改变)

注意:如果标签有默认文字样式会继承失败。

例如:a 标签的颜色、标题的字体大小。

<!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>
        body
        {
            color: red;
        }
    </style>
</head>
<body>
    <div>111</div>
    <p>222</p>
    <span>333</span>
    <br>
    <!-- 如果标签自己有样式,则生效自己的样式 -->
    <a href="#">444</a>
</body>
</html>

网页显示为:                                                                                          

层叠性

特点:

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

• 不同的属性会叠加:不同的 CSS 属性都生效

注意:选择器类型相同则遵循层叠性,否则按选择器优先级判断。

优先级

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

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

公式:通配符选择器 < 标签选择器 < 类选择器 < id选择器 < 行内样式 < !important

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

优先级 – 叠加计算规则

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

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

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

规则:

• 从左向右依次比较选个数,同一级个数多的优先级高,如果个数相同,则向后比较

• !important 权重最高

• 继承权重最低(如果是继承,即使有!important也没有用)

     

Emmet 写法

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

HTML

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

背景属性

背景图

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

属性名:background-image(bgi)

属性值:url(背景图 URL)

提示:背景图默认有平铺(复制)效果。

<!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>
        div
        {
            width: 300px;
            height: 300px;
            /* 背景图默认是平铺(复制)的效果 */
            background-image: url(../图片2.jpg);
        }
    </style>
</head>
<body>
    <div>111</div>
</body>
</html>

网页显示为:                                                      

背景图平铺方式

属性名:background-repeat(bgr)

属性值

背景图位置

属性名:background-position(bgp)

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

• 关键字                      

 

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

水平:正数向右;负数向左

垂直:正数向下;负数向上

提示:

关键字取值方式写法,可以颠倒取值顺序

• 可以只写一个关键字,另一个方向默认为居中;数字只写一个值表示水平方向,垂直方向为居中

背景图缩放

作用:设置背景图大小

属性名:background-size(bgz)

常用属性值:

• 关键字

cover:等比例缩放背景图片以完全覆盖背景区,可能背景图片部分看不见

contain:等比例缩放背景图片以完全装入背景区,可能背景区部分空白

• 百分比:根据盒子尺寸计算图片大小

• 数字 + 单位(例如:px)

提示:工作中,图片比例与盒子比例相同,使用 cover 或 contain 缩放背景图效果相同。

背景图固定

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

属性名:background-attachment(bga)

属性值:fixed

背景复合属性

属性名:background(bg)

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

显示模式

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

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

块级元素

独占一行

宽度默认是父级的100%

添加宽高属性生效    

行内元素

一行可以显示多个

设置宽高属性不生效

宽高尺寸由内容撑开

行内块元素

一行可以显示多个

设置宽高属性生效

宽高尺寸也可以由内容撑开

转换显示模式

属性名:display

属性值:


相关文章
|
27天前
|
前端开发 JavaScript
探索现代Web应用的微前端架构
【10月更文挑战第40天】在数字时代的浪潮中,Web应用的发展日益复杂多变。微前端架构作为一种新兴的设计理念,正逐步改变着传统的单一前端开发模式。本文将深入探讨微前端的核心概念、实现原理及其在实际项目中的应用,同时通过一个简单的代码示例,揭示如何将一个庞大的前端工程拆分成小而美的模块,进而提升项目的可维护性、可扩展性和开发效率。
|
15天前
|
Java 开发者 微服务
Spring Boot 入门:简化 Java Web 开发的强大工具
Spring Boot 是一个开源的 Java 基础框架,用于创建独立、生产级别的基于Spring框架的应用程序。它旨在简化Spring应用的初始搭建以及开发过程。
32 6
Spring Boot 入门:简化 Java Web 开发的强大工具
|
18天前
|
前端开发 JavaScript 搜索推荐
HTML与CSS在Web组件化中的核心作用及前端技术趋势
本文探讨了HTML与CSS在Web组件化中的核心作用及前端技术趋势。从结构定义、语义化到样式封装与布局控制,两者不仅提升了代码复用率和可维护性,还通过响应式设计、动态样式等技术增强了用户体验。面对兼容性、代码复杂度等挑战,文章提出了相应的解决策略,强调了持续创新的重要性,旨在构建高效、灵活的Web应用。
29 6
|
18天前
|
前端开发 JavaScript UED
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势
在数字化时代,Web 应用性能优化尤为重要。本文探讨了CSS与HTML在提升Web性能中的关键作用及未来趋势,包括样式表优化、DOM操作减少、图像优化等技术,并分析了电商网站的具体案例,强调了技术演进对Web性能的深远影响。
24 5
|
26天前
|
消息中间件 前端开发 JavaScript
探索微前端架构:构建现代Web应用的新策略
本文探讨了微前端架构的概念、优势及实施策略,旨在解决传统单体应用难以快速迭代和团队协作的问题。微前端允许不同团队独立开发、部署应用的各部分,提升灵活性与可维护性。文中还讨论了技术栈灵活性、独立部署、团队自治等优势,并提出了定义清晰接口、使用Web组件、状态管理和样式隔离等实施策略。
|
1月前
|
编解码 前端开发 JavaScript
从入门到精通:揭秘前端开发中那些不为人知的优化秘籍!
前端开发是充满无限可能的领域,从初学者到资深专家,每个人都追求更快、更稳定、更用户体验友好的网页。本文介绍了四大优化秘籍:1. HTML的精简与语义化;2. CSS的优雅与高效;3. JavaScript的精简与异步加载;4. 图片与资源的优化。通过这些方法,可以显著提升网页性能和用户体验。
20 3
|
1月前
|
监控 前端开发 JavaScript
探索微前端架构:构建可扩展的现代Web应用
【10月更文挑战第29天】本文探讨了微前端架构的核心概念、优势及实施策略,通过将大型前端应用拆分为多个独立的微应用,提高开发效率、增强可维护性,并支持灵活的技术选型。实际案例包括Spotify和Zalando的成功应用。
|
1月前
|
Web App开发 前端开发 JavaScript
揭秘!前端大牛们如何巧妙利用CSS3,打造炫酷视觉效果!
【10月更文挑战第31天】前端开发面临复杂布局的挑战,本文介绍了几种提升开发效率和代码质量的工具和技术。基础的HTML和CSS可以应对大部分布局需求,而Firefox开发者工具、VS Code、Vue、React等则能应对更复杂的布局,帮助开发者构建高性能、用户友好的网页应用。
27 4
|
1月前
|
机器学习/深度学习 自然语言处理 前端开发
前端神经网络入门:Brain.js - 详细介绍和对比不同的实现 - CNN、RNN、DNN、FFNN -无需准备环境打开浏览器即可测试运行-支持WebGPU加速
本文介绍了如何使用 JavaScript 神经网络库 **Brain.js** 实现不同类型的神经网络,包括前馈神经网络(FFNN)、深度神经网络(DNN)和循环神经网络(RNN)。通过简单的示例和代码,帮助前端开发者快速入门并理解神经网络的基本概念。文章还对比了各类神经网络的特点和适用场景,并简要介绍了卷积神经网络(CNN)的替代方案。
|
1月前
|
移动开发 前端开发 JavaScript
前端实训,刚入门,我用原生技术(H5、C3、JS、JQ)手写【网易游戏】页面特效
于辰在大学期间带领团队参考网易游戏官网的部分游戏页面,开发了一系列前端实训作品。项目包括首页、2021校园招聘页面和明日之后游戏页面,涉及多种特效实现,如动态图片切换和人物聚合效果。作品源码已上传至CSDN,视频效果可在CSDN预览。
33 0
前端实训,刚入门,我用原生技术(H5、C3、JS、JQ)手写【网易游戏】页面特效

热门文章

最新文章