CSS 设置背景图片

news2024/11/26 8:47:37

文章目录

    • 设置背景颜色
    • 设置背景图片
      • 背景图片偏移量计算原点
      • 背景图片尺寸
      • 设置背景图片位置
      • 设置背景图片重复方式
      • 设置背景范围
      • 设置背景图片是否跟随元素移动
      • 测试背景图片

本文概念部分参考:CSS背景background设置

设置背景颜色

  • background-color 设置背景颜色

设置背景图片

  • background-image 设置背景图片(背景图片将会盖在背景颜色上方)
    • 如果背景图片大小小于元素,则背景图片会自动在元素中平铺将元素铺满(图片重复的超出元素的部分将会被裁剪掉)
    • 如果背景图片大小大于元素,则背景图片一部分会无法完全显示(图片多余的超出元素部分将会被裁剪掉)
    • 如果背景图片大小等于元素,则背景图片会直接正常显示
    • 可以同时设置背景图片和背景颜色,这样背景颜色将会成为图片的背景色

背景图片偏移量计算原点

  • background-origin 背景图片的偏移量计算的原点
    • border-box 背景图片的变量从边框处开始计算
    • padding-box 默认值,background-position从内边距处开始计算
    • content-box 背景图片的偏移量从内容区处计算

注意:经过测试,它是第一张图片的左上角到元素左上角的距离(第一张的意思是:在图片repeat铺满之前)。如果是border-box,那就是第一张图片的左上角到元素边框靠外面的哪那个左上角的距离。如果是padding-box,那就是到padding靠外面那个左上角的距离。如果是content-box,那就是到content左上角的距离。

背景图片尺寸

  • background-size 用来调整背景图像的尺寸大小。

    • 第一个值表示宽度,第二个值表示高度;如果只写一个,则第二个值默认是auto(即表示第二个值等比例缩放)
    • cover 图片的比例不变,将元素铺满
    • contain 图片比例不变,将图片在元素中完整显示
  • 补充:

background-size 指定背景图像大小,以象素或百分比显示,当指定为百分比时,大小会由所在区域的宽度、高度以及
background-origin(图片的起始位置) 的位置决定,还可以通过 cover 和 contain 来对图片进行伸缩。

如:background-size : contain | cover | 100px 100px | 50% 100%;

background-size:contain; // 缩小图片来适应元素的尺寸(保持像素的长宽比);
background-size :cover; // 扩展图片来填满元素(保持像素的长宽比);
background-size :100px 100px; // 调整图片到指定大小; background-size :50%
100%; // 调整图片到指定大小,百分比相对于"包含元素"的尺寸。

设置背景图片位置

  • background-position 设置背景图片的位置

    • 通过top-center-bottom,left-center-right这 几个表示方位的词来设置背景图片的位置:使用方位词时必须要同时指定两个值,如果只写一个则第二个默认就是center
    • 通过偏移量来指定背景图片的位置:水平方向偏移量、垂直方向变量
  • background-position百分比原理

    • 等价写法

top left, left top 等价于 0% 0%.
top, top center, center top 等价于 50% 0%.
right top, top right 等价于 100% 0%.
left, left center, center left 等价于 0% 50%.
center, center center 等价于 50% 50%.
right, right center, center right 等价于 100% 50%.
bottom left, left bottom 等价于 0% 100%.
bottom, bottom center, center bottom 等价于 50% 100%.
bottom right, right bottom 等价于 100% 100%.

  • background-position百分比计算公式

background-postion:x y;
x:{容器(container)的宽度—背景图片的宽度}*x百分比,超出的部分隐藏。
y:{容器(container)的高度—背景图片的高度}*y百分比,超出的部分隐藏。

如上通过设置百分比和关键字能实现背景图居中,如果要实现通过具体值来设置图片居中该设置多少?

根据上面公式:

x=(容器的宽度-背景图宽度)*x百分比=(300px-200px)*50%=50px;
y=(容器的高度-背景图高度)*y百分比=(300px-200px)*50%=50px;

即设置background-postion:50px 50px;

效果同样居中。

设置背景图片重复方式

  • background-repeat 设置背景图片的重复方式
    • repeat 默认值,背景图片沿着 x 轴和 y 轴双方向重复
    • repeat-x 背景图片沿着 x 轴方向重复
    • repeat-y 背景图片沿着 y 轴方向重复
    • no-repeat 背景图片不重复

设置背景范围

  • background-clip 设置背景的范围(同时控制背景颜色和背景图片的裁剪)
    • border-box 默认值,背景会出现在边框的下边
    • padding-box 背景不会出现在边框,只出现在内容区和内边距
    • content-box 背景只会出现在内容区

设置背景图片是否跟随元素移动

  • background-attachment 背景图片是否跟随元素移动
    • scroll 默认值,背景图片会跟随元素移动
    • fixed 背景会固定在页面中,不会随元素移动

测试背景图片

<!DOCTYPE html>
<html lang="zh-CN">
	<head>
		<meta charset="UTF-8">
		<title>设置背景图</title>
		<style>
			/*
				去掉列表有序或者无序的徽记
			*/
			ul{
				list-style-type: none;
			}
			/*
				设置浮动,改变元素排列顺序
			*/
			li{
				/* 设置从左到右排列 */
				float: left;
				/* 每个列表向右偏移 */
				margin-right: 30px;
				/* 每个列表向下偏移 */
				margin-top:100px;
			}

			/*
				设置背景图
			*/
			body{
				background-image: url("./image/background.gif");
				/*
					设置背景图横向排列,不换行
				*/
				background-repeat: repeat-x;
				background-color:#cccc99;
				/*
					使用红绿蓝三种颜色可以测定颜色
					rgb(0~255,0~255,0~255)

				background-color: rgb(204,204,153);
				*/
			}
			label{
				display: block;
				margin-top: 100px;
			}

			input.myinput{
				border:solid 2px red;
				background-color: #ffd3d6;
				/* 设置波浪线背景图 */
				background-image: url("./image/check.gif");
				/* 只允许从左往右横向排列一次 */
				background-repeat: repeat-x;
				/* 设置背景图的位置 */
				background-position: bottom;
			}
		</style>
	</head>
	<body>
		<ul>
			<li><img src="image/1.jpg" alt="图片错误"></li>
			<li><img src="image/2.jpg" alt="图片错误"></li>
			<li><img src="image/3.jpg" alt="图片错误"></li>
			<li><img src="image/4.jpg" alt="图片错误"></li>
		</ul>

		<label for="myinput">
			用户姓名: <input type="text" name="test" class="myinput"
			             placeholder="请输入用户名" id="myinput"/>
		</label>
	</body>
</html>

效果

在这里插入图片描述

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

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

相关文章

【面试合集】说说你对 linux 用户管理的理解?相关的命令有哪些?

面试官&#xff1a;说说你对 linux 用户管理的理解&#xff1f;相关的命令有哪些&#xff1f; 一、是什么 Linux是一个多用户的系统&#xff0c;允许使用者在系统上通过规划不同类型、不同层级的用户&#xff0c;并公平地分配系统资源与工作环境 而与 Windows 系统最大的不同…

表的增删改查 进阶(一)

&#x1f3a5; 个人主页&#xff1a;Dikz12&#x1f525;个人专栏&#xff1a;MySql&#x1f4d5;格言&#xff1a;那些在暗处执拗生长的花&#xff0c;终有一日会馥郁传香欢迎大家&#x1f44d;点赞✍评论⭐收藏 目录 1.数据库约束 约束类型 NOT NUll 约束 UNIQUE 约束 …

【Qt-license】误操作qt下载导致只能安装商业版试用十天,无法安装社区版

背景&#xff1a; 原本是为了学习qml&#xff0c;需要下载一个design studio&#xff0c;而这个需要比较新版的安装程序&#xff0c;但新版的安装程序官方都是online安装。于是从官网找下载链接。毕竟是英文的&#xff0c;又心急&#xff0c;误打误撞中我选择了商业版试用。 其…

2024华数杯B题四小问完整思路+四问数据代码+数据可视化图表

ICM B 题&#xff1a;光伏发电 完整资料在文末获取 该题目出题的难度与方向都与美赛 ICM 的题型高度相似&#xff0c;将本次竞赛当做美赛的 练手赛&#xff0c;个人认为是非常合适的一种选择。同时 28 号就可以出成绩&#xff0c;也可以在美赛前 实现查漏补缺&#xff0c;提…

dolphinscheduler分布式集群部署指南(小白版)

1.Apache DolphinScheduler概述 官方文档地址&#xff1a;https://dolphinscheduler.apache.org/zh-cn/docs/3.1.9 1.1.DolphinScheduler简介 摘自官网&#xff1a;Apache DolphinScheduler 是一个分布式易扩展的可视化DAG工作流任务调度开源系统。适用于企业级场景&#xf…

5-数组-矩阵置零

这是数组的第5篇算法&#xff0c;力扣链接。 给定一个 m x n 的矩阵&#xff0c;如果一个元素为 0 &#xff0c;则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,1,1],[1,0,1],[1,1,1]] 输出&#xff1a;[[1,0,1],[0…

国标GB28181安防视频监控EasyCVR级联后上级平台视频加载慢的原因排查

国标GB28181协议安防视频监控系统EasyCVR视频综合管理平台&#xff0c;采用了开放式的网络结构&#xff0c;可以提供实时远程视频监控、视频录像、录像回放与存储、告警、语音对讲、云台控制、平台级联、磁盘阵列存储、视频集中存储、云存储等丰富的视频能力&#xff0c;同时还…

推荐五款超好用的AI写作自动生成器给你

随着人工智能技术的不断发展&#xff0c;AI写作自动生成器成为了现代写作的新宠。这些智能工具能够帮助我们快速生成高质量的文章&#xff0c;节省时间和精力。在本文中&#xff0c;我将向大家推荐五款超好用的AI写作自动生成器&#xff0c;希望能够为你的写作工作带来便利和效…

坚持刷题 | 二叉树的层序遍历

坚持刷题&#xff0c;老年痴呆追不上我&#xff0c;今天刷&#xff1a;二叉树的层序遍历 题目 102二叉树的层序遍历 考察点 数据结构基础&#xff1a; 能够正确地使用二叉树数据结构&#xff0c;并了解二叉树的基本性质。编程基础&#xff1a; 能够熟练使用Java编程语言&a…

大语言模型系列-Transformer

文章目录 前言一、Attention二、Transformer结构三、Transformer计算过程1. 编码器&#xff08;Encoder&#xff09;1&#xff09;Self-Attention层2&#xff09;Multi-Head-Attention层3&#xff09;Add & Norm层 2. 解码器&#xff08;Decoder&#xff09;1&#xff09;M…

【欢迎您的到来】这里是开源库get_local_info作者的付费专栏

您好&#xff0c; 我是带剑书生&#xff0c;开源库get_local_info的作者&#xff0c;欢迎您的到来&#xff0c;这里是我的付费专栏&#xff0c;会用更简洁的语言&#xff0c;更通俗的话语&#xff0c;来帮助您更好的学习rust&#xff0c;这里不仅仅讲解Rust在某些应用功能实现上…

就想搞一个简单的html模板学学css到底行不行?

做一个个人博客第一步该怎么做&#xff1f; 好多零基础的同学们不知道怎么迈出第一步。 那么&#xff0c;就找一个现成的模板学一学呗&#xff0c;毕竟我们是高贵的Ctrl c v 工程师。 但是这样也有个问题&#xff0c;那就是&#xff0c;那些模板都&#xff0c;太&#xff01;…

【性能调优】local模式下flink处理离线任务能力分析

文章目录 一. flink的内存管理1.Jobmanager的内存模型2.TaskManager的内存模型2.1. 模型说明2.2. 通讯、数据传输方面2.3. 框架、任务堆外内存2.4. 托管内存 3.任务分析 二. 单个节点的带宽瓶颈1. 带宽相关理论2. 使用speedtest-cli 测试带宽3. 任务分析3. 其他工具使用介绍 本…

SERVLET的概念

SERVLET的概念 假设一种您需要登录到网站上访问电子邮件账户的场景。您需要提交登录详细信息进行验证,如用户名和密码。网站使用服务器端程序接受并验证登录信息。这些服务器端程序是用不同的服务器端技术编写的,如公共网关接口(CGI)、Active Server Pages(ASP)及servle…

爬虫逆向开发教程1-介绍,入门案例

爬虫前景 在互联网的世界里&#xff0c;数据就是新时代的“黄金”。而爬虫&#xff0c;就是帮助我们淘金的“工具”。随着互联网的不断发展&#xff0c;数据量呈现指数级的增长&#xff0c;在数据为王的时代&#xff0c;有效的挖掘数据和利用&#xff0c;你会得到更多东西。 学…

Spring MVC的原理

Spring MVC中的MVC即模型-视图-控制器&#xff0c;该框架围绕一个DispatcherServlet设计而成&#xff0c;DispatcherServlet会把请求分发给各个处理器&#xff0c;并支持可配置的处理器映射和视图渲染等功能。Spring MVC的具体工作流程如下&#xff1a; &#xff08;1&#xff…

商业应用算力全球新标杆!浪潮信息八路服务器创SAP SD评测最高性能

1月15日&#xff0c;据全球领先的企业应用软件提供商SAP发布的最新SAP SD评测结果&#xff0c;浪潮信息TS860G7服务器创下1,659,970 SAPS的最高性能成绩&#xff0c;成为商业应用算力的全球新标杆。TS860G7是浪潮信息最新一代的企业级八路服务器&#xff0c;其取得的最新成绩也…

电商平台spu和sku的完整设计

一、关于数据库表的设计 1、商品属性表 比如一个衣服有颜色、尺码、款式这个叫属性表 -- ------------------------ -- 商品属性表 -- ------------------------ DROP TABLE IF EXISTS attribute; CREATE TABLE attribute (id int(11) NOT NULL PRIMARY KEY AUTO_INCREMENT CO…

复现PointNet++(语义分割网络):Windows + PyTorch + S3DIS语义分割 + 代码

一、平台 Windows 10 GPU RTX 3090 CUDA 11.1 cudnn 8.9.6 Python 3.9 Torch 1.9.1 cu111 所用的原始代码&#xff1a;https://github.com/yanx27/Pointnet_Pointnet2_pytorch 二、数据 Stanford3dDataset_v1.2_Aligned_Version 三、代码 分享给有需要的人&#xf…

阿里云国外服务器价格表

阿里云国外服务器优惠活动「全球云服务器精选特惠」&#xff0c;国外服务器租用价格24元一个月起&#xff0c;免备案适合搭建网站&#xff0c;部署独立站等业务场景&#xff0c;阿里云服务器网aliyunfuwuqi.com分享阿里云国外服务器优惠活动&#xff1a; 全球云服务器精选特惠…