CSS:元素显示模式与背景

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.rhkb.cn/news/221418.html

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

相关文章

Unity的UI界面——Text/Image

编辑UI界面时&#xff0c;要先切换到2d界面 &#xff08;3d项目的话&#xff09; 1.Text控件 Text控件的相关属性&#xff1a; Character:&#xff08;字符&#xff09; Font&#xff1a;字体 Font Style&#xff1a;字体样式 Font Size&#xff1a;字体大小 Line Spac…

Nodejs 第二十九章(express)

什么是express&#xff1f; Express是一个流行的Node.js Web应用程序框架&#xff0c;用于构建灵活且可扩展的Web应用程序和API。它是基于Node.js的HTTP模块而创建的&#xff0c;简化了处理HTTP请求、响应和中间件的过程。 简洁而灵活&#xff1a;Express提供了简单而直观的A…

maven+spock

pom配置 话说JunitMockito的组合用起来是真难用&#xff0c;还是Spock的简单&#xff0c;尤其是参数化的测试。junit的Parameter是鸡肋&#xff0c;杂恶心&#xff1b;Theories用来也不爽。 <?xml version"1.0" encoding"UTF-8"?><project xm…

跟着我学Python进阶篇:01.试用Python完成一些简单问题

往期文章 跟着我学Python基础篇&#xff1a;01.初露端倪 跟着我学Python基础篇&#xff1a;02.数字与字符串编程 跟着我学Python基础篇&#xff1a;03.选择结构 跟着我学Python基础篇&#xff1a;04.循环 跟着我学Python基础篇&#xff1a;05.函数 跟着我学Python基础篇&#…

【MyBatis学习笔记】MyBatis基础学习

MyBatis基础 MyBatis简介MyBatis特性MyBatis下载和其他持久化层技术对比 核心配置文件详解默认的类型别名 搭建MyBatis开发环境创建maven工程创建MyBatis的核心配置文件创建mapper接口创建MyBatis的映射文件通过junit测试功能加入log4j日志功能 MyBatis获取参数值的两种方式&am…

换热站数字孪生 | 图扑智慧供热 3D 可视化

换热站作为供热系统不可或缺的一部分&#xff0c;其能源消耗对城市环保至关重要。在双碳目标下&#xff0c;供热企业可通过搭建智慧供热系统&#xff0c;实现供热方式的低碳、高效、智能化&#xff0c;从而减少碳排放和能源浪费。通过应用物联网、大数据等高新技术&#xff0c;…

【Axure RP9】实现登入效验及实现左侧菜单栏跳转各页面

目录 一 效验简介 1.1 校验好处 1.2 应用场景 二 登入校验 2.1 效果 2.2 实现流程 三 左边菜单栏左侧菜单栏跳转各页面 3.1 效果 3.2 实现图 一 效验简介 1.1 校验好处 提高安全性&#xff1a; 在传统的用户名和密码登录的基础上&#xff0c;引入了另一种或多种验证…

docker 安装及配置 nginx + tomcat(四):高可用

文章目录 1. 引言2. 高可用架构3. 实际步骤3.1 虚拟机新建系统3.2 安装 keepalived3.3 配置 keepalived3.4 启动 keepalived3.5 验证高可用3.5.1 查看当前效果3.5.2 模拟灾难 4 参考 1. 引言 前情提要&#xff1a; 《docker 安装及配置 nginx tomcat&#xff08;一&#xff0…

nodejs连接mongodb报错SyntaxError: Unexpected token .

nodejs连接mongodb报错SyntaxError: Unexpected token 如下图 经过排查&#xff0c;原因是npm默认安装的mongodb插件是最新版6.3.0 &#xff0c;而mongodb数据库版本是4.0.0 &#xff0c;两者版本不同导致nodejs报错。 解决方法是npm卸载新版本的mongodb插件&#xff0c;再安…

建行驻江门市分行纪检组党支部开展“以廉养人,以案警人”清廉文化现场教学活动

近日&#xff0c;建行驻江门市分行纪检组党支部联合建设支行党支部到江门市党群服务中心开展“以廉养人&#xff0c;以案警人”清廉文化现场教学活动。 名言语句亮初心。一楼展馆入口处竖立着“拔烂树、治病树、正歪树”“以猛药去疴刮骨疗毒的勇气反腐”“理想信念是共产党人的…

【数据结构】并查集的简单实现,合并,查找(C++)

文章目录 前言举例&#xff1a; 一、1.构造函数2.查找元素属于哪个集合FindRoot3.将两个集合归并成一个集合Union4.查找集合数量SetCount 二、源码 前言 需要将n个不同的元素划分成一些不相交的集合。开始时&#xff0c;每个元素自成一个单元素集合&#xff0c;然后按一定的规…

「X」Embedding in NLP|神经网络和语言模型 Embedding 向量入门

在「X」Embedding in NLP 进阶系列中&#xff0c;我们介绍了自然语言处理的基础知识——自然语言中的 Token、N-gram 和词袋语言模型。今天&#xff0c;我们将继续和大家一起“修炼”&#xff0c;深入探讨神经网络语言模型&#xff0c;特别是循环神经网络&#xff0c;并简要了解…

车载蓝牙物联网解决方案

车载蓝牙物联网解决方案是一种基于蓝牙技术&#xff0c;结合物联网技术的智能车载系统。它利用蓝牙技术将智能手机、智能手表、智能车载设备等连接起来&#xff0c;实现设备之间的无缝通信和数据共享&#xff0c;为驾驶者提供更加便捷、安全和智能的驾驶体验。 车载蓝牙物联网解…

RocketMQ系统性学习-RocketMQ原理分析之Broker接收消息的处理流程

Broker接收消息的处理流程&#xff1f; 既然要分析 Broker 接收消息&#xff0c;那么如何找到 Broker 接收消息并进行处理的程序入口呢&#xff1f; 那么消息既然是从生产者开始发送&#xff0c;消息是有单条消息和批量消息之分的&#xff0c;那么消息肯定是有一个标识&#…

Codeforces Round 916 (Div. 3)(G未补)

目录 A. Problemsolving Log B. Preparing for the Contest C. Quests D. Three Activities E1.E2. Game with Marbles F. Programming Competition A. Problemsolving Log 题意&#xff1a;A任务需要一分钟完成&#xff0c;B任务需要两分钟完成&#xff0c;……以此类推…

ASP.NET MVC实战之权限拦截Authorize使用

1&#xff0c;具体的实现方法代码如下 public class CustomAuthorizeAttribute : FilterAttribute, IAuthorizationFilter{/// <summary>/// 如果需要验证权限的时候&#xff0c;就执行进来/// </summary>/// <param name"filterContext"></par…

代码随想录算法训练营第四十一天|198.打家劫舍 ,213.打家劫舍II ,337.打家劫舍III

198. 打家劫舍 - 力扣&#xff08;LeetCode&#xff09; 你是一个专业的小偷&#xff0c;计划偷窃沿街的房屋。每间房内都藏有一定的现金&#xff0c;影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统&#xff0c;如果两间相邻的房屋在同一晚上被小偷闯入&#…

设计模式(三)-结构型模式(5)-外观模式

一、为何需要外观模式&#xff08;Facade&#xff09;? 要实现一个大功能&#xff0c;我们需要将它拆分成多个子系统。然后每个子系统所实现的功能&#xff0c;就由一个称为外观的高层功能模块来调用。这种设计方式就称为外观模式。该模式在开发时常常被使用过&#xff0c;所…

HTML CSS 进度条

1 原生HTML标签 <meter>&#xff1a;显示已知范围的标量值或者分数值<progress>&#xff1a;显示一项任务的完成进度&#xff0c;通常情况下&#xff0c;该元素都显示为一个进度条 1.1 <meter> <html><head><style>meter{width:200px;}…

飞天使-k8s知识点1-kubernetes架构简述

文章目录 名词功能要点 k8s核心要素CNCF 云原生框架简介k8s组建介绍 名词 CI 持续集成, 自动化构建和测试&#xff1a;通过使用自动化构建工具和自动化测试套件&#xff0c;持续集成可以帮助开发人员自动构建和测试他们的代码。这样可以快速检测到潜在的问题&#xff0c;并及早…