CSS—行高、背景属性、三大特性

2023-12-31 15:30

本文主要是介绍CSS—行高、背景属性、三大特性,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【前言】

今天来总结CSS的3个知识点:行高、背景相关的属性、三大特性:层叠性、继承性和优先级。

【内容】

1.行高

(1)行高如何测量?

上一行的基线到下一行的基线。

(2)单行文本垂直居中

让单行文本在盒子中垂直居中对齐。

(3)如何实现单行文本垂直居中?

让文字的行高等于盒子的高度。

(4)行高 = 上距离 + 内容高度 + 下距离

(5)行高与高度的三种关系:

行高等于高度 文字会垂直居中

行高大于高度 文字会偏下

行高小于高度 文字会偏上

2.css背景

(1)背景颜色(color)

语法如下:

Background-color:颜色值;

默认的值是transparent 透明的

(2)背景图片(image)

语法如下:

Background-image: url(images/l.jpg);

参数:

参数

作用

none

无背景图(默认的)

url

使用绝对或相对地址指定背景图像

(3)背景平铺

语法如下:

background-repeat : repeat | no-repeat repeat-x repeat-y;

参数:

参数

作用

repeat

背景图像在纵向和横向上平铺

no-repeat

背景图像不平铺

repeat-x

背景图像在横向上平铺

repeat-y

背景图像在纵向平铺

(4)背景位置(position)

语法如下:

background-position : length || length

background-position : position || position

例如:background-position : right top; 分别为x坐标、y坐标

参数:

参数

length

百分数|由浮点数字和单位表示符组成的长度值

position

top | center | bottom | left | center | right 方位名词

说明:

1)必须先指定background属性。

2)position后面是x坐标和y坐标,可以使用方位名词或者精确单位。

3)如果只指定了一个方位名词,另一个值默认居中,为50%。

4)如果只指定一个数值,那该数值用于x坐标,另一个默认是y坐标,默认居中。

5)如果指定两个值,两个值都是方位名字,则两个值前后顺序无关,比如left、top和top、left效果一样。

6)如果指定两个值,精确单位和方位名字混合使用,则第一个值是x坐标,第二个值是y坐标。

(5)背景附着

解释背景是滚动的还是固定的。

语法如下:

background-attachment : scroll | fixed;

参数:

参数

作用

scroll

背景图像是随对象内容滚动

fixed

背景图像固定

(6)背景简写

和font的属性类似,多个属性值可以简写为一条,语法如下:

background: transparent url(image.jpg) repeat-y scroll center top;

background: 属性的值的书写顺序并没有强制的标准,但我们同样都按这样的顺序:

background: 背景颜色 背景图片地址 背景平铺 背景滚动 背景位置;

(7)背景透明

语法如下:

Background: rgba(0,0,0,0.3);

说明:

最后一个参数是alpha(透明度),取值范围0~1之间。

背景半透明是指盒子背景半透明,盒子里面的内容不受影响。

(8)背景小结

属性

作用

background-color

背景颜色

预定义的颜色值/十六进制/RGB代码

background-image

背景图片

url(图片路径)

background-repeat

是否平铺

repeat/no-repeat/repeat-x/repeat-y

background-position

背景位置

length/position 分别是x和y坐标,切记如果有精确数值单位,则必须按照先X后Y的写法

background-attachment

背景固定还是滚动

scroll/fixed

背景简写

更简单

背景颜色 背景图片地址 背景平铺 背景滚动 背景位置,可以没有顺序

背景透明

让盒子半透明

Background: right(0,0,0,0.3); 后边必须是4个值

3.CSS三大特性

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

(1)CSS层叠性

层叠性是指多种CSS样式的叠加。

是浏览器处理冲突的一个能力,如果一个属性通过两个相同选择器设置到同一个元素上,那么这个时候一个属性就会将另一个属性层叠掉。

原则:

样式冲突,遵循的原则就是就近原则,哪个样式离着结构近,就执行哪个样式。

样式不冲突,不会层叠。

CSS层叠性最后的执行口诀:

长江后浪推前浪,前浪死在沙滩上。

(2)CSS继承性

子标签会继承父标签的某些样式,如文本颜色和字号。

想要设置一个可继承的属性,只需将它应用于父元素即可。即子承父业。

说明:

恰当地使用继承可以简化代码,降低CSS样式的复杂性。比如有很多子级孩子都需要某个样式,这时可以给父级指定一个,这些孩子继承过来就可以了。

子元素可以继承父元素的样式(text-、font-、line-这些元素开头的可以继承,以及color属性)。

CSS继承口诀:

龙生龙,凤生凤,老鼠生的孩子会打洞。

(3)CSS优先级

定义CSS样式时,经常出现两个或更多规则应用在同一元素上,此时,

1)选择器相同,则执行层叠性。

2)选择器不同,就会出现优先级的问题。

(1)不同的选择器,都有自己的一个权重计算公式:这个就是CSS Specificity(特殊性)

说明:

Specificity用一个四位的数,更像四个级别。

值从左到右,左面的最大,一级大于一级,数位之间没有进制,级别之间不可超越。

关于CSS权重,我们需要一套计算公式计算,就是CSS Specificity(特殊性)。

(2)权重叠加

我们经常用交集选择器,后代选择器等,是由多个基础选择器组合而成,那么此时,就会出现权重叠加,就是一个简单的加法计算。

说明:

1)数位之间没有进制,比如说:0,0,0,5 + 0,0,0,5 = 0,0,0,10而不是0,0,1,0,所以不会存在10个div能赶上一个类选择器的情况。

2)继承的权重是0。我们修改样式时,一定要看该标签有没有被选中:

如果选中了,那么以上面的公式来计权重,谁大听谁的;如果权重相同,则会根据层叠性,就近原则。

如果没有选中,那么权重为0,因此继承的权重为0。

3)2个特殊标签:链接和h标题,他们浏览器有自己默认的样式,继承的权重为0,所以体验还是要单独给链接和标题一个样式。

这篇关于CSS—行高、背景属性、三大特性的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/556434

相关文章

Vue3 的 shallowRef 和 shallowReactive:优化性能

大家对 Vue3 的 ref 和 reactive 都很熟悉,那么对 shallowRef 和 shallowReactive 是否了解呢? 在编程和数据结构中,“shallow”(浅层)通常指对数据结构的最外层进行操作,而不递归地处理其内部或嵌套的数据。这种处理方式关注的是数据结构的第一层属性或元素,而忽略更深层次的嵌套内容。 1. 浅层与深层的对比 1.1 浅层(Shallow) 定义

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

【 html+css 绚丽Loading 】000046 三才归元阵

前言:哈喽,大家好,今天给大家分享html+css 绚丽Loading!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕 目录 📚一、效果📚二、信息💡1.简介:💡2.外观描述:💡3.使用方式:💡4.战斗方式:💡5.提升:💡6.传说: 📚三、源代码,上代码,可以直接复制使用🎥效果🗂️目录✍️

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

滚雪球学Java(87):Java事务处理:JDBC的ACID属性与实战技巧!真有两下子!

咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java SE啦,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好习惯,别被干货淹没了哦~ 🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!! 环境说明:Windows 10

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

Vue3项目开发——新闻发布管理系统(六)

文章目录 八、首页设计开发1、页面设计2、登录访问拦截实现3、用户基本信息显示①封装用户基本信息获取接口②用户基本信息存储③用户基本信息调用④用户基本信息动态渲染 4、退出功能实现①注册点击事件②添加退出功能③数据清理 5、代码下载 八、首页设计开发 登录成功后,系统就进入了首页。接下来,也就进行首页的开发了。 1、页面设计 系统页面主要分为三部分,左侧为系统的菜单栏,右侧

【VUE】跨域问题的概念,以及解决方法。

目录 1.跨域概念 2.解决方法 2.1 配置网络请求代理 2.2 使用@CrossOrigin 注解 2.3 通过配置文件实现跨域 2.4 添加 CorsWebFilter 来解决跨域问题 1.跨域概念 跨域问题是由于浏览器实施了同源策略,该策略要求请求的域名、协议和端口必须与提供资源的服务相同。如果不相同,则需要服务器显式地允许这种跨域请求。一般在springbo

HTML提交表单给python

python 代码 from flask import Flask, request, render_template, redirect, url_forapp = Flask(__name__)@app.route('/')def form():# 渲染表单页面return render_template('./index.html')@app.route('/submit_form',

Java 后端接口入参 - 联合前端VUE 使用AES完成入参出参加密解密

加密效果: 解密后的数据就是正常数据: 后端:使用的是spring-cloud框架,在gateway模块进行操作 <dependency><groupId>com.google.guava</groupId><artifactId>guava</artifactId><version>30.0-jre</version></dependency> 编写一个AES加密