尚硅谷html5+css3(2)CSS5基本知识

1.网页分为三个部分:

结构:HTML

表现:CSS

行为JavaScript

CSS:层叠样式表,网页实际上是一个多层结构,通过CSS可以分别为网页的每一个层来设置样式,最终用户只看最上面的一层,总之,CSS用来设置网页中元素的样式

2.使用CSS修改元素的样式:

(1)在标签内部通过style属性设置元素的样式(内联样式,只能对一个标签生效,一般不用)

<p style="color: red;font-size: 60px;"> style </p>

(2)将样式编写到head的style标签中(内部样式表:可以同时为多个标签设置样式,修改时只用修改次此处即可)(但只能对一个页面起作用)

例:使所有p标签都为绿色:


<head><style>p { color: green; }</style>
</head>

(3)对多个网页起作用(外部样式表)

将CSS样式编写到一个外部CSS文件中,使样式在不同页面复用。还可以使用浏览器的缓存机制,从而加快网页的加载速度,提高用户体验

即创建style.css文件:

 p { color: green; }

通过link标签引入外部CSS文件

<link rel="stylesheet" href="./style.css">

3.CSS的基本语法

在<style>标签中不属于html,所以要用CSS的标准写

<head><style>/*CSS注释*//*CSS基本语法:选择器 声明块选择器:通过选择器可以选中页面中指定元素例:h1:选中页面所有h1元素声明块:通过声明块来指定要为元素设置的格式例:color: blue;最后一个;可以省略*/h1 {color: blue;}</style>
</head><body><h1> 111 </h1>
</body>

4.CSS的常用选择器

(1)元素选择器

<head><style>/*元素选择器:作用:根据标签名选中指定的元素语法:标签名+{}例子:p{} h1{} div{}*/p {color: blue;}</style>
</head><body><h1> 111 </h1><p> p1 </p><p> p2 </p>
</body>

(2)id选择器(设置id时保证唯一性)

<head><style>/*若将第二行的p单独设置为红色,则使用id选择器作用:根据元素的id属性选中一个元素语法:#+id+{}例子:#12{color:red}*/#abc {color: red}</style>
</head><body><h1> 111 </h1><p> p1 </p><p id="abc"> p2 </p>
</body>

(3)class标签(多个class用空格隔开)

<head><style>/*类选择器:class是一个标签的属性,他和id相似,不同的是class可以重复使用作用:根据元素的class属性值选中一组元素语法:.+class+{}*/.abc {color: red}.bc {font-size: 50px;}</style>
</head><body><h1> 111 </h1><p> p1 </p><p class="abc bc"> p2 </p><p class="abc"> p3 </p>
</body>

(4)通配选择器

<head><style>/*通配选择器作用:选中页面中的所有元素语法:**/*{color: red}</style>
</head>
<body><h1> 111 </h1><p> p1 </p>
</body>

5.复合选择器

(1)交集选择器 .

<head><style>/*将class为red的div字体大小设置为30px使用交集选择器作用:选中同时复合多个条件的元素语法:选择器1+.+选择器2+{}注意:若有元素选择器,则用元素选择器开头*/div.red {font-size: 30px;}</style>
</head><body><div class="red"> div </div><p class="red"> p </p>
</body>

(2)并集选择器 ,

<head><style>/*同时选中h1和span设置为绿色使用并集选择器作用:同时选择多个选择器对应的元素语法:选择器1+,+选择器2+{}注意:若有元素选择器,则用元素选择器开头*/h1,span {color: green;}</style>
</head><body><h1 class="red"> div </h1><span class="red"> p </span>
</body>

6.关系选择器

<body><div>我是div<p>我是div中的p<span>我是div-p-span</span></p><span>我是div-span</span></div>
</body>

(1)子元素选择器

<head><style>/*为div的子元素span(不是p里的span)设置一个字体颜色:红色子元素选择器作用:选中指定父元素的指定子元素*/div > span {color: red;}</style>
</head>

(2)后代元素选择器

  /*后代元素选择器*/div span {color: red;}

(3)兄弟元素选择器

        /*兄弟元素选择器:(都是选择后面的)选择下一个兄弟语法:当前+下一个(要修改的)选择下面所有兄弟语法:兄~弟(要修改的)*/p + span {color: red;}p ~ span {color: red;}

7.属性选择器

<body><p title="a"> 1</p><p title="ab"> 2</p><p title="c"> 2</p><p> 3</p>
</body>
        /*属性选择器1:[属性名],让p标签中有title的颜色变为红色(不关注title里的具体值)选择含有指定属性的元素 */p[title] {color: red;}

 /*属性选择器2:[属性名=属性值],让p标签中title=b的颜色变为红色选择含有指定属性和属性值的元素*/p[title=a] {color: red;}

 /*属性选择器3/4/5:[属性名^=属性值],选择以属性值开头的元素例:选择以a开头的元素[属性名¥=属性值],选择以属性值结尾的元素[属性名*=属性值],选择属性值中含有某元素的元素*/p[title^=a] {color: red;}

8.伪类选择器

<head><style>/*将ul里的第一个li设置为红色*/ul > li.first {color: red;}</style>
</head><body><!--ul>5*li--><ul><li class="first">第1个</li><li>第2个</li><li>第3个</li><li>第4个</li><li>第5个</li></ul>
</body>

这个将第一个li设置为红色,若添加li在此前面,则新的第一个li不为红色

解决方法:使用伪类选择器

<head><style>/*将ul里的第一个li设置为红色*//*使用伪类(用来描述一个元素的特殊状态)比如:第一个元素/被点击的元素伪类一般情况下用:开头*//*:first-child:冒号前面元素的第一个子元素(总可以确保第一个为红色)*/ul>li:first-child {color: red;}/*:last-child:冒号前面元素的最后一个子元素(总可以确保最后一个为绿色)*/ul>li:last-child {color: green;}/*:nth-child(n):冒号前面元素的第n个子元素(总可以确保第n个为蓝色)若()写n:全选(n取0~正无穷)若()写2n/even:选中偶数位的元素若()写2n+1/odd:选中偶数位的元素*/ul>li:nth-child(3) {color: blue;}/*这些伪类是根据所有子元素进行排序即若最前面加span,则都不生效 要用ul>span:first-child选第一个*//*:first-of-type  :last-of-type  :nth-last-of-type()功能与上述相同找相同类型的第?个,即使用:first-of-type可以在span加入的情况下对第一个li进行改变*/</style>
</head><body><!--ul>5*li--><ul><li>第1个</li><li>第2个</li><li>第3个</li><li>第4个</li><li>第5个</li></ul>
</body>

<head><style>/*:not()否定伪类将符合条件的元素从选择其中去除*/ul>li:not(li:nth-child(2)) {color: aqua;}</style>
</head>

10.超链接的伪类

<head><style>/*一般不用*//*link和visited只适用于a*//*:link:表示没访问过的链接*/a:link {color: red;}/*:visited:表示访问过的链接,只能改颜色*/a:visited {color: green;}</style>
</head>
<!--通过伪类区分:1.没访问过的链接2.访问过的链接
--><body><a href="https://www.baidu.com/"> 访问过的链接</a><br><br><a href="https://www.baidu.com/"> 没访问过的链接</a>
</body>

表示鼠标移入的状态:a:hover  表示鼠标点击的状态:a:active(这两个所有元素都可以用)

<head><style>/*表示鼠标移入的状态:a:hover*/a:hover {color: red;}/*表示鼠标点击的状态:a:active*/a:active {font-size: 30px;color: green;}</style>
</head>
<!--通过伪类区分:1.没访问过的链接2.访问过的链接
--><body><a href="https://www.baidu.com/"> 链接1</a><br><br><a href="https://www.baidu.com/"> 链接2</a>
</body>

11.伪元素选择器

<head><style>/*伪元素:表示页面中一些特殊的元素(如首字母)::first-letter:第一个字母::first-line:第一行::selection:鼠标选中的内容*/p::first-letter {font-size: 50px;}p::first-line {background-color: yellow;}p::selection {color: green;}</style>
</head><body><!--首字母下沉--><p>Lorem ipsum dolor, sit amet consectetur adipisicing elit. Minima obcaecati iusto, illum sapiente consequatur hicharum exercitationem perspiciatis deleniti? Autem ducimus qui recusandae impedit voluptatum voluptate quibusdamesse dignissimos pariatur.</p>
</body>

<head><style>/*伪元素:表示页面中一些特殊的元素(如首字母)::before 元素起始位置  在>和h之间::after 元素最后位置  在u和<之间before和after必须结合content使用(添加内容)*/div::before{content: 'abc';color: red;}div::after{content: 'hhhhh';color: green;}</style>
</head><body><div>hello hello how are you</div>
</body>

12.样式的继承

<head><style>/*样式的继承:我们为一个元素设置的样式同时也会应用到它的后代上并不是所有的样式都会被继承,比如背景、布局相关的不会被继承*/p{color: red;}</style>
</head>
<!--span元素继承了父亲p的style-->
<body><p>我是一个p元素<span>我是p元素中的span元素</span></p>
</body>

13.选择器的权重

<head><style>div {color: yellow;}.red {color: red;}</style>
</head>
<!--样式的冲突:当我们通过不同的选择器选中相同的元素,并为相同的样式设置不同的值发生样式冲突时,应用哪个样式由选择器的权重(优先级)决定选择器的权重从高到低:内联样式,id选择器,类和伪类选择器,元素选择器若优先级相同,则优先使用下面的样式可以在某样式后面加!inportant,则此样式为最高优先级
--><body><div id="box1" class="red">我是div</div>
</body>

14.像素和百分比

<head><style>.box1 {/*长度单位:像素 px百分比*/width: 200px;height: 200px;background-color: orange;}.box2 {/*百分比:将属性设置为相对于其父元素属性的百分比使用百分比可以使子元素跟随父元素的改变而改变*/width: 50%;height: 70%;background-color: green;}</style>
</head>
<body><div class="box1">11 <div class="box2">22</div></div>
</body>

<head><style>html{font-size: 50px;}.box1 {/*em:相对于元素的字体大小来计算的1em=1font-sizeem会根据字体大小的改变而改变*/font-size: 20px;width: 10em;height: 10em;background-color: red;}.box2 {/*rem:相对于根元素(html)的字体大小来计算的1em=1font-sizeem会根据字体大小的改变而改变*/font-size: 50px;width: 10em;height: 10em;background-color: blue;}</style>
</head><body><div class="box1">11 <div class="box2">22</div></div>
</body>

15.RGB/RGBA值:

使用颜色名,比如red,yellow等

使用RGB值,0~255(0%~100%之间)

使用RGBA,A代表不透明度,用.n表示(1表示完全不透明,0表示完全透明)

使用十六进制的RGB值:#红色绿色蓝色,如果两位重复可以简写,例:#ffffff可以简写为#fff

16.HSL/HSLA值:

H:色相  (0-360)

S:饱和度 颜色的浓度(0-100)

L:亮度 (0-100)

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《MATLAB科研绘图与学术图表绘制从入门到精通》

解锁MATLAB科研绘图魅力&#xff0c;让数据可视化成为你的科研利器&#xff01; 1.零基础快速入门&#xff1a;软件操作实战案例图文、代码结合讲解&#xff0c;从入门到精通快速高效。 2.多种科研绘图方法&#xff1a;科研绘图基础变量图形极坐标图形3D图形地理信息可视化等&a…

4月7号总结

java学习 一.正则表达式 定义&#xff1a;正则表达式是一种用于描述字符串模式的表达式&#xff0c;通常被用于文本搜索、匹配和替换。它是一种强大的工具&#xff0c;可以在文本处理和文本分析中进行复杂的匹配和操作。 通过字符串引用里面的方法matches&#xff0c;然后执行…

转让名称带中国的金融控股集团公司要多少钱

随着公司的发展和市场竞争的影响&#xff0c;越来越多的创业者希望注册一家好名称的公司&#xff0c;以提高企业知名度和竞争力。但是&#xff0c;注册中字头无地域公司需要满足一定的条件和流程。本文将对中字头无地域公司注册条件及流程进行详细的介绍。可以致电咨询我或者来…

Linux IO:打开数据之窗的魔法

Linux I/O&#xff08;输入/输出&#xff09;是操作系统中一个至关重要的组成部分&#xff0c;它涉及到数据在内存&#x1f9e0;、存储设备&#x1f4be;、网络接口&#x1f310;等之间的传输过程。在Linux中&#xff0c;I/O操作不仅仅是文件读写那么简单&#xff0c;它包括了一…

蓝桥杯 历届真题 杨辉三角形【第十二届】【省赛】【C组】

资源限制 内存限制&#xff1a;256.0MB C/C时间限制&#xff1a;1.0s Java时间限制&#xff1a;3.0s Python时间限制&#xff1a;5.0s 思路&#xff1a; 由于我第一写没考虑到大数据的原因&#xff0c;直接判断导致只得了40分&#xff0c;下面是我的代码&#xff1a; #…

三防笔记本丨加固笔记本丨三防笔记本电脑赋能车辆检修

随着汽车数量的不断增加和交通运输行业的发展&#xff0c;车辆检修行业成为了保障交通安全和延长车辆寿命的重要领域。在车辆检修过程中&#xff0c;需要使用各种工具和设备来进行检测、维修和保养&#xff0c;而信息化技术的应用正逐渐渗透到这一行业中&#xff0c;为检修工作…

珠海华发实业股份有限公司副总毛冰清莅临天府锋巢直播产业基地考察调研

3月19日&#xff0c;珠海华发实业股份有限公司副总毛冰清拜访天府锋巢直播产业基地&#xff08;以下简称天府锋巢&#xff09;&#xff0c;由产业招商总负责人姜国东进行接待。 基地建设情况 姜国东负责人介绍到&#xff0c;天府锋巢是由德商产投携手无锋科技于兴隆湖落地的成都…

Hive3.0.0建库表命令测试

Hive创建表格格式如下&#xff1a; create [external] table [if not exists] table_name [(col_name data_type [comment col_comment],)] [comment table_comment] [partitioned by(col_name data_type [comment col_comment],)] [clustered by (col_name,col_name,...)…

Python程序设计 字符类型及其操作

1. 提取身份证号性别 通过身份证的第17位也就是倒数第二位的数字可以辨别该身份证所属人的性别,奇数为男性,偶数为女性。 输入身份证号&#xff0c;第17位若是偶数&#xff0c;输出性别女&#xff0c;否则输出性别男 1.通过input()函数接收用户输入的身份证号&#xff0c;将其…

第7章 数据安全

思维导图 7.1 引言 数据安全包括安全策略和过程的规划、建立与执行&#xff0c;为数据和信息资产提供正确的身份验证、授权、访问和审计。虽然数据安全的详细情况(如哪些数据需要保护)因行业和国家有所不同&#xff0c;但是数据安全实践的目标是相同的&#xff0c;即根据隐私和…

SQL Sever 2008 安装教程

先从官网下载程序&#xff1a;下载地址 打开上述链接后&#xff0c;点击下载按钮。 就会跳出下面这个界面&#xff0c;如果你的电脑是64位的请选择下图中这两个程序。 下载完成后&#xff0c;在电脑磁盘中找到这两个文件&#xff0c;注意安装的顺序&#xff0c;先安装 SQLEXPR…

pdf操作器(图片转文字、PDF转word、PDF拆分、图片jpg、png互转)

pdf操作器&#xff08;不用联网图片转文字、PDF转word、PDF拆分、图片jpg、png互转&#xff09;介绍目前该软件实现了以下功能 pdf转wordpdf拆分图片&#xff0c;图片导出在桌面的一个文件夹里图片合并为pdf压缩、转换图片格式&#xff08;jpg和png&#xff09;OCR图片转文字&…

uniapp中uni.navigateTo传递变量

效果展示&#xff1a; 核心代码&#xff1a; uniapp中uni.navigateTo传递变量 methods: {changePages(item) {setDatas("maintenanceFunName", JSON.stringify(item)).then((res) > {uni.navigateTo({url: /pages/PMS/maintenance/maintenanceTypes/maintenanceT…

[图像处理] MFC载入图片并绘制ROI矩形

上一篇&#xff1a; [图像处理] MFC载入图片并进行二值化处理和灰度处理及其效果显示 文章目录 前言完整代码重要代码效果 前言 上一篇实现了MFC通过Picture控件载入图片。 这一篇实现ROI功能的第一部分&#xff0c;在Picture控件中&#xff0c;通过鼠标拖拽画出一个矩形。 完…

积木报表Excel数据量大导出慢导不出问题、大量数据导不出问题优化方案和分析解决思路(优化前一万多导出失败,优化后支持百万级跨库表导出)

文章目录 积木报表Excel数据量大导出慢导不出问题、大量数据导不出问题优化方案和分析解决思路&#xff08;优化前一万多导出失败&#xff0c;优化后支持百万级跨库表导出&#xff09;优化结果需求背景和解决方案的思考解决方案流程描述&#xff1a;关键代码引入easy excel新建…

景区云旅游/视频慢直播方案设计与平台搭建

一、行业背景 经文化和旅游部数据中心测算&#xff0c;今年清明节假期3天全国国内旅游出游1.19亿人次&#xff0c;按可比口径较2019年同期增长11.5%&#xff1b;国内游客出游花费539.5亿元&#xff0c;较2019年同期增长12.7%。踏青赏花和户外徒步成为假期的热门出游主题。随着…

Python学习从0开始——007输入与输出

Python学习从0开始——007输入与输出 一、简单输出二、复杂输出2.1引用变量2.2format()函数2.3手动格式化 三、读写文件3.1open()3.2操作文件对象3.3使用 json 保存结构化数据 一、简单输出 str() 函数返回供人阅读的值&#xff0c;repr() 则生成适于解释器读取的值&#xff0…

使用LIMIT进行分页

SELECT employee_id, first_name, salary FROM employees LIMIT 0, 5; 0为偏移量&#xff0c; 5为条目数 每页pageSize条记录&#xff0c;显示第page页 LIMIT (page - 1) * pageSize, pageSize; # 或者 LIMIT pageSize OFFSET (page - 1) * pageSize;

百度富文本编辑器配置(vue3)

今天分享一下我做的项目里面的一个百度富文本的配置问题&#xff0c;安装配置流程以及如何解决的 1.首先是安装组件 # vue-ueditor-wrap v3 仅支持 Vue 3 npm i vue-ueditor-wrap3.x -S # or yarn add vue-ueditor-wrap3.x 2. 下载 UEditor UEditor 并不支持通过 npm 的方式…

YOLOv9改进策略 :小目标 | 注意力 |卷积和注意力融合模块(CAFMAttention) | 2024年4月最新成果

💡💡💡本文独家改进:卷积和注意力融合模块(CAFMAttention),增强对全局和局部特征的提取能力,2024年最新的改进思路 💡💡💡创新点:卷积和注意力巧妙设计 💡💡💡如何跟YOLOv8结合:1)放在backbone后增强对全局和局部特征的提取能力;2)放在detect前面,增…