CSS:元素显示模式与背景

news2024/11/24 15:08:59

CSS:元素显示模式与背景

    • 元素显示模式
      • 什么是元素显示模式
      • 块级元素 block
      • 行内元素 inline
      • 行内块元素 inline-block
      • 元素显示模式对比
      • 元素显示模式转换 display
    • 背景
      • 背景颜色 background-color
      • 背景图片 background-image
      • 背景平铺 background-repeat
      • 背景图片位置 background-position
      • 背景附着 background-attachment
      • 背景复合写法 background


元素显示模式

什么是元素显示模式

元素显示模式就是元素(标签)以上面方式进行显示,比如div标签独占一行,span标签可以在一行内与其他元素共存。
网页的标签非常多,都有各自的布局特点,但是总体而言,它们被分为三大类:行内元素,块级元素以及行内块元素。


块级元素 block

常见的块级元素有:<h1> -- <h6><p><ul><ol><li><div>等,其中div是最典型的块级元素。
块级元素的特点:

1.独占一行
2.可以控制宽高,内外边距
3.宽度默认值为父级元素的100%
4.内部可以放其它行内元素或块级元素

注意:文字类的块级元素,不能存放其它块级元素,否则会发生错误。
示例:
在这里插入图片描述
我们将一个div放在了p内部,在显示上,div独占一行,把上下的文字挤到两边,绿色的盒子是p,红色的区域是div,好像div在p的内部。
但是当我们打开调试会发现,浏览器自动为你的代码添加了两个p标签,即被我绿色框出来的p,这样div就在p的外面了。
所以这种文字类的块级元素内部不能存放块级元素
同理h1 - h6也不可以放块级元素。


行内元素 inline

常见的行内元素有:<a><strong><b><em><del><span>等,其中span是最典型的行内元素。
行内元素的特点:

1.一行内可以放下多个行内元素
2.无法设置宽高,设置了也无效
3.宽高由其内容撑开
4.只能容纳文本或者其它行内元素

效果如下:
在这里插入图片描述
蓝色区域就是这个行内元素span的宽高,可以发现,直接设置的宽高是无效的,最终宽高由内容决定。

注意:a标签内部不能放a标签,但是a标签内可以放块级元素,是特殊的行内元素。


行内块元素 inline-block

行内块元素,是前两者的结合体,常见的行内块元素有:<img/><input/><td>等。

行内块元素特点:

1.一行内可以有多个行内块元素
2.默认宽度是其本身宽度(块级的默认快读是父亲的宽度)
3.可以控制宽高和内外边距

但是行内块元素的在同一行显示,和行内元素是略有区别的。
行内块元素在一行内时,两个元素之间会有一点空隙,而行内元素则是紧紧挨着的。


元素显示模式对比

元素模式元素排列设置样式默认宽度包含
块级元素一行只能放一个块级元素可以设置宽高父级容器的100%可以包含任何标签
行内元素一行可以放多个行内元素不可以直接设置宽高由内容撑开只能容纳文本或者其它行内元素
行内块元素一行可以放多个行内块元素可以设置宽高由内容撑开----

元素显示模式转换 display

CSS提供了一个属性display,用于转换元素的显示模式:

属性值对应元素
block转化为块级元素
inline转化为行内元素
inline-block转化为行内块元素

示例:
在这里插入图片描述
可以看到,经过转化后,span也可以独占一行了。


背景

背景颜色 background-color

background-color定义了元素的背景颜色,其一般情况下是默认值:background-color: transparent;此属性值代表透明。

属性值:背景颜色的属性值有四种形式,分别为关键字形式,rgb形式,rgba形式,十六进制形式:

表示方式属性值
关键字red,green,blue等,直接指定颜色
rbgrgb(255,255,255) 或 rgb(100%,100%,100%)
rbgargba(255,255,255,0.5)
十六进制形式#ffaabb

rgb形式
此处的rgb分别代表red,green,blue三种颜色,每个颜色的取值为0-255。然后将三种颜色按照比例混合,就得到了你的目标颜色。比如rgb(50,100,150),就是将红色,绿色,蓝色按照50 : 100 :150的比例混合得到的颜色。

rgba形式
相比于rgb形式,rgba形式多了一个a属性,这里的a代表透明度,取值范围为0-1。当a取值为1,代表不透明;当取值为0,代表完全透明。a值可以省略,省略是就是rgb形式,此时a默认值为1。

十六进制形式
16进制,其实也是和rgb形式一致的,十六进制的表示形式有六位值,其中每两位表示一个颜色。比如#112233中,11代表red的比例,22代表green的比例,33代表blue的比例。
为什么可以这样做呢?在rgb形式中,每个颜色的取值范围是0-255,而两位16进制数字可以代表0-255的十进制数字,所以从十六进制的00-ff,刚好对应0-255。所以十六进制表示形式和rgb形式本质上是一致的。


背景图片 background-image

background-image属性描述了背景图像,实际开发常见于logo或者一些装饰性的小图片,以及超大的背景图片,优点是非常便于控制位置,而且不占用空间。
属性值:

属性值作用
none无背景图片
url指定背景图片的路径

背景平铺 background-repeat

如果要在HTML页面上对背景图像进行平铺,可以用background-repeat属性。
属性值:

属性值作用
repeat背景图片在横向和纵向平铺(默认值)
no-repeat背景图像不平铺,只显示一次
repeat-x只在横向平铺
repeat-y只在纵向平铺

示例:
这是默认情况下,在横向和纵向同时平铺:
在这里插入图片描述
这是no-repeat情况下,背景图片只重复一次:
在这里插入图片描述
这是repeat-x,只在横向平铺:
在这里插入图片描述

这是repeat-y,只在纵向平铺:
在这里插入图片描述


背景图片位置 background-position

background-position可以改变图片在背景中的位置,其有两种参数模式:x轴和y轴的坐标,方位名词。
方位名词包括:center,top,bottom,left,right。

参数是方位名词情况下:

1.如果设置一个方位名词,则第二个方位默认居中
2.如果设置俩个方位名词,则前后两个值的顺序无关,比如left top和top left的含义相同
3.top和bottom最多设置一个,left和right也最多显示一个

示例:
在这里插入图片描述
如果参数是精确单位:

1.如果参数是精确坐标,第一个属性值一定是x坐标,第二个一定是y坐标
2.如果只指定一个坐标值,则该值默认为x坐标,y值默认居中。


背景附着 background-attachment

background-attachment可以设置背景图像是否随着页面滚动。
属性值:

属性值作用
scroll背景图像随页面滚动
fixed背景图像固定,不随页面滚动

fixed的效果如下:
请添加图片描述


背景复合写法 background

为了简化背景属性的代码,我们可以将这些属性简写在同一个属性background上。
当使用简写属性时,没有固定的顺序,但是一般习惯约定顺序为:
background: 背景颜色 背景图片 背景平铺 背景附着 背景位置;


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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

使用Swift Package Manager (SPM)实现xcframework分发

Swift Package Manager (SPM) 是苹果官方提供的用于管理 Swift 项目的依赖关系和构建过程的工具。它是一个集成在 Swift 编程语言中的包管理器&#xff0c;用于解决在开发过程中管理和构建包依赖项的需求。 Package结构 一个 Package&#xff08;包&#xff09;由 Swift 源码…

CSS 网页制作-学成在线

1、 准备工作 1.1 项目目录 网站根目录是指存放网站的第一层文件夹&#xff0c;内部包含当前网站的所有素材&#xff0c;包含HTML、CSS、图片、JavaScript等等。 1.2 版心效果 可以发现都是呈现版心居中的效果&#xff0c;但是每次都写一次太麻烦了&#xff0c;可以把版心居中…

Android应用-flutter使用Positioned将控件定位到底部中间

文章目录 场景描述示例解释 场景描述 要将Positioned定位到屏幕底部中间的位置&#xff0c;你可以使用MediaQuery来获取屏幕的高度&#xff0c;然后设置Positioned的bottom属性和left或right属性&#xff0c;一般我们left和right都会设置一个值让控制置于合适的位置&#xff0…

鸿蒙应用开发初体验 HelloWorld

9 月 25 日&#xff0c;华为常务董事、终端 BG CEO、智能汽车解决方案 BU 董事长余承东华为秋季全场景新品发布会上介绍了鸿蒙系统的最新进展&#xff1a;HarmonyOS 4 发布后&#xff0c;短短一个多月升级用户已经超过 6000 万&#xff0c;成为史上升级速度最快的 HarmonyOS 版…

Python数据科学视频讲解:包裹法—递归特征消除

4.4 包裹法—递归特征消除 视频为《Python数据科学应用从入门到精通》张甜 杨维忠 清华大学出版社一书的随书赠送视频讲解4.4节内容。本书已正式出版上市&#xff0c;当当、京东、淘宝等平台热销中&#xff0c;搜索书名即可。内容涵盖数据科学应用的全流程&#xff0c;包括数据…

【已解决】vs2015下c++对sqlite的操作

本博文源于笔者操作sqlite3&#xff0c;借鉴了很多文章的思路&#xff0c;这里并整理了c常用的对数据库的操作供大家点赞收藏以后备用。包含了&#xff1a;c对sqlite3的创建数据库、创建数据表、写入数据表、读取数据表、删除数据表。也包括了最基础的让c运行sqlite3.内容供读者…

gem5 RubyPort: mem_request_port作用与连接 simple-MI_example.py

简介 回答这个问题&#xff1a;RubyPort的口下&#xff0c;一共定义了六个口&#xff0c;分别是mem_request_port&#xff0c;mem_response_port&#xff0c;pio_request_port&#xff0c;pio_response_port&#xff0c;in_ports, interrupt_out_ports&#xff0c;他们分别有什…

长三角安防行业盛会“2024杭州安博会”4月份在杭州博览中心召开

作为中国安防行业的盛会&#xff0c;2024杭州安博会将于4月份在杭州国际博览中心隆重召开。本届安博会将汇聚全球最先进的安防技术和产品&#xff0c;为来自世界各地的安防从业者、爱好者以及投资者提供一个交流、展示和合作的平台。 据了解&#xff0c;2024杭州安博会将会展示…

one wire(单总线)FPGA代码篇

一.引言 单总线&#xff08;OneWire&#xff09;是一种串行通信协议&#xff0c;它允许多个设备通过一个单一的数据线进行通信。这个协议通常用于低速、短距离的数字通信&#xff0c;特别适用于嵌入式系统和传感器网络。 二.one wire通信优点缺点 优点&#xff1a; 单一数据线…

[CVPR-23] Instant Volumetric Head Avatars

[paper | code | proj] 本文提出INSTA。INSTA是一种backward mapping方法。该方法基于NeRF建立标准空间&#xff0c;形变空间&#xff08;任意表情&#xff09;通过映射回标准空间&#xff0c;实现渲染。为实现形变空间中任意点向标准空间的映射&#xff0c;对形变空间中的任意…

PySpark中DataFrame的join操作

内容导航 类别内容导航机器学习机器学习算法应用场景与评价指标机器学习算法—分类机器学习算法—回归机器学习算法—聚类机器学习算法—异常检测机器学习算法—时间序列数据可视化数据可视化—折线图数据可视化—箱线图数据可视化—柱状图数据可视化—饼图、环形图、雷达图统…

Vue 保留富文本中包含指定字符串所在的行

需求描述 如下图所示&#xff0c;想保留所有包含『张三』所在的行 最终实现效果 先看一下富文本的源码 <p>任务1 张三</p> <p>任务2 张三</p> <p>任务3 李四</p> <p>任务4 李四</p> &l…

「微服务模式」七种微服务反模式

什么是微服务 流行语经常为进化的概念提供背景&#xff0c;并且需要一个良好的“标签”来促进对话。微服务是一个新的“标签”&#xff0c;它定义了我个人一直在发现和使用的领域。文章和会议描述了一些事情&#xff0c;我慢慢意识到&#xff0c;过去几年我一直在发展自己的个人…

JMeter常见配置及常见问题修改

一、设置JMeter默认打开字体 1、进入安装目录&#xff1a;apache-jmeter-x.x.x\bin\ 2、找到 jmeter.properties&#xff0c;打开。 3、搜索“ languageen ”&#xff0c;前面带有“#”号.。 4、去除“#”号&#xff0c;并修改为&#xff1a;languagezh_CN 或 直接新增一行&…

Envoy

一. Envoy ). Envoy Envoy 于 2017 年 9 月作为孵化项目加入 CNCF。从孵化到毕业&#xff0c;Envoy 都是 CNCF 增长最快的项目之一 Envoy 在吞吐量和延迟方面都表现良好。这在大型云原生部署中至关重要 Envoy 是专为大型现代 SOA&#xff08;面向服务架构&#xff09;架构设计…

Java|IDEA 中添加编译参数 --add-exports

方法1 File > Settings > Build, Execution, Deployment > Compiler > Java Compiler > Javac Options > Override compiler parameters per-module 点击&#xff1a; 点击OK 双击Compliation options&#xff0c;输入后回车&#xff1a; 方法2 找到出错…

【S32DS RTD实战】-1.4-基于S32K3创建配置FreeRTOS工程-控制GPIO点亮LED

目录(附DEMO&#xff0c;可下载&#xff0c;讲解过程超详细) 1 下载FREERTOS RTD 1.1 安装FREERTOS RTD 2 确认S32DS已安装的AUTOSAR RTD 3 基于S32K3创建&配置FREERTOS工程 3.1 选择SDKs 3.2 增加FreeRTOS模块 3.3 修改MCU芯片封装 3.4 配置GPIO 3.5 修改HSE CLK…

python如何更改代码背景图片,背景主题(黑色护眼)和各类文本颜色(python进阶必看,爱了爱了)

一、在 PyCharm 中设置图片背景的方法如下&#xff1a; 打开 PyCharm 的设置窗口&#xff0c;在设置窗口中找到 "Appearance & Behavior" -> "Appearance" 选项卡。在 "Appearance" 选项卡中&#xff0c;找到 "Background Image&qu…

HarmonyOs4.0基础

目录 一、HarmonyOs系统定义 1.1系统的技术特性(三大特征) 1.1.1、硬件互助、资源共享 1.1.2、一次开发、多端部署(面向开发者) 1.1.3、统一OS&#xff0c;弹性部署(支持多种API&#xff1a;ArkTs、JS、C/C、Java) 1.2、系统的技术架构 二、Harmony OS项目搭建 2.1、(D…

同步与互斥(二)

一、谁上锁就由谁解锁&#xff1f; 互斥量、互斥锁&#xff0c;本来的概念确实是&#xff1a;谁上锁就得由谁解锁。 但是FreeRTOS并没有实现这点&#xff0c;只是要求程序员按照这样的惯例写代码。 main函数创建了2个任务&#xff1a; 任务1&#xff1…