【css3】01-css3新特性样式篇

news2024/11/25 23:05:34

目录

1 背景

1.1 设置背景图片的定位

1.2 背景裁切-规定背景的绘制区域

1.3 设置背景图片尺寸 

 2 边框

2.1 盒子阴影box-shadow

2.2 边框图片border-image

3 文本 -文字阴影text-shadow


1 背景

1.1 设置背景图片的定位

background-origin:规定背景图片的定位区域。(就是将图片的原点定位到下面三种方式中,设置未平铺)
☞ padding-box    背景图像相对内边距定位(默认值)
☞ border-box     背景图像相对边框定位【以边框左上角为参照进行位置设置】
☞ content-box    背景图像相对内容区域定位【以内容区域左上角为参照进行位置设置】

备注:
1. 默认盒子的背景图片是在盒子的内边距左上角对齐设置。

content-box

border-box 

padding-box:

代码:

<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		* {
			margin: 0;
			padding: 0;
		}

		.box {
			width: 300px;
			height: 300px;
			border: 10px dashed red;
			margin: 50px auto;
			padding: 30px;

			background-image: url("1.png");
			background-repeat: no-repeat;

			/* background-origin: content-box; */
			/* background-origin: border-box; */
			background-origin: padding-box;
		}
	</style>
</head>

<body>
	<div class="box"></div>
</body>

1.2 背景裁切-规定背景的绘制区域

background-clip: 规定背景的绘制区域。(将图片放在下面三个区域内,设置平铺)
☞ border-box     背景被裁切到边框盒子位置 【将背景图片在整个容器中显示】
☞ padding-box     背景被裁切到内边距区域【将背景图片在内边距区域(包含内容区域)显示】
☞ content-box     背景被裁切到内容区域【将背景图片在内容区域显示】

content-box 

 padding-box 

border-box:

代码:

<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		* {
			margin: 0;
			padding: 0;
		}

		.box {
			width: 300px;
			height: 300px;
			border: 20px dashed red;
			padding: 20px;
			margin: 50px auto;
			background: url(1.png);
			/* background-clip: content-box; */
			/* background-clip: padding-box; */
			background-clip: border-box;
		}
	</style>
</head>

<body>

	<div class="box"></div>
</body>

1.3 设置背景图片尺寸 

background-size:     规定背景图片的尺寸。
☞ cover
☞ contain

直接设置图片大小与div容器宽高相等(图片失真)

cover:将背景图片按照原图片的缩放比,将整个容器铺满(图片显示不完整)

contain:将背景图片按照原来的缩放比,完整的显示到容器中(容器可能未填充满)

代码:


<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		.one {
			width: 200px;
			height: 200px;
			border: 1px solid red;
			background: url("2.jpg") no-repeat;

			/* 设置背景图片大小 */
			/* background-size: 200px 200px; */

			/* 将背景图片按照原来的缩放比,将整个容器铺满
			 */
			/* background-size: cover; */

			/* 将背景图片按照原来的缩放比,完整的显示到容器中 
				  1. 不确定是否会将容器填充满
			*/
			/* background-size: contain; */


		}
	</style>
</head>

<body>
	<div class="one"></div>
</body>

 2 边框

box-shadow:      盒子阴影 

0px (x)0px (y) 10px(模糊度) red
border-radius:   边框圆角

border-image:      边框图片

2.1 盒子阴影box-shadow

样例:

 

<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		.box {
			width: 200px;
			height: 200px;
			border: 1px solid red;
			border-radius: 10px;
			/*设置圆角*/

			/* 
			  第一个0px 代表阴影在水平方向的偏移量(正数向右,负数向左)
			  第二个0px
			   代表阴影在垂直方向的偏移量(正数代表向下,负数代表向上)
			   第三个10px
			   代表阴影的模糊度 (不能设置负数)
			  设置多个阴影,使用逗号隔开
			 */
			box-shadow: 0px 0px 10px red,
				5px -5px 10px blueviolet;
		}
	</style>
</head>

<body>
	<div class="box"></div>
</body>

2.2 边框图片border-image

 border-image:      边框图片

平铺方式:stretch(拉伸)

平铺方式:round(全是完整的爱心)

平铺方式:repeat (在边角处存在不完整的爱心)

<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		.box {
			width: 347px;
			height: 300px;
			border: 20px solid red;
			margin: 50px auto;

			/* 设置边框图片 */
			border-image-source: url("2.png");

			/* 边框图片裁切 : 不需要带单位*/
			border-image-slice: 20;

			/* 设置边框图片的平铺方式 */
			/* border-image-repeat: stretch; */
			border-image-repeat: round;
			/*  border-image-repeat: repeat; */

			border-image-width: 20px;
		}
	</style>
</head>

<body>

	<div class="box">1111</div>
</body>
  1. border-image-source:
    这个属性指定了边框图片的URL。在这个例子中,它指向了名为 "2.png" 的图片。

  2. border-image-slice:
    这个属性定义了边框图片如何被裁切。当值为 20时,这意味着图片将被从四个角各裁切20像素的宽度/高度,形成9个区域:四个角、四条边和一个中心区域(虽然中心区域通常不会被使用在边框中)。

     

    注意:如果图片的尺寸不足以裁切这么多像素,那么结果可能会不可预测或不好看。

  3. border-image-repeat:
    这个属性定义了边框图片如何被平铺(或缩放)以填充边框区域。使用 round,这意味着图片会被缩放(但保持其宽高比)以完整地适应边框的宽度和高度,但可能会留下一些空隙(如果边框的尺寸不能被图片尺寸整除)。

     

    如果你选择 stretch,图片会被拉伸以完全填充边框,这可能会导致图片失真

     

    如果你选择 repeat,图片会被重复以填充边框,但如果边框的尺寸不能被图片尺寸整除,那么图片的最后一部分可能会被截断

  4. border-image-width:
    这个属性定义了边框的宽度。你设置了 20px,这意味着边框将使用裁切后的图片,其宽度为20像素。

     

    注意:虽然已经设置了 border: 20px solid red;,但在使用 border-image 时,border-width 实际上是由 border-image-width 控制的。

3 文本 -文字阴影text-shadow

☞text-shadow: 设置文本阴影(跟盒子阴影差不多)

<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style type="text/css">
		 div {
		 	 font-size: 100px;
		 	 text-align: center;
		 	 padding-top: 100px;

		 	 text-shadow: 0px 0px 10px red,
		 	 			  1px -1px 10px blue;
		 }
	</style>
</head>
<body>
	
	 <div>
	 	 文字阴影
	 </div>
</body>

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

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

相关文章

遇到了导师放养,该怎么坚持?

最近收到学生读者的留言&#xff0c;抱怨科研的困难。导师忙碌且学生众多&#xff0c;自己只是众多学生之一&#xff0c;常常处于放养状态。除了每周的组会外&#xff0c;几乎无法接触到导师。在这种状态下&#xff0c;缺乏方向和动力&#xff0c;非常担心无法顺利毕业&#xf…

Llama模型家族之使用 Supervised Fine-Tuning(SFT)微调预训练Llama 3 语言模型(三)通过web页面方式微调

LlaMA 3 系列博客 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;一&#xff09; 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;二&#xff09; 基于 LlaMA 3 LangGraph 在windows本地部署大模型 &#xff08;三&#xff09; 基于 LlaMA…

【Linux】自己实现一个bash进程

bash就是命令行解释器&#xff0c;就是Linux操作系统让我们看到的&#xff0c;与用户进行交互的一种外壳&#xff08;shell&#xff09;&#xff0c;当然了bash也是一个进程&#xff0c;它有时候就是通过创建子进程来执行我们输入的命令的。这无疑就离不开我们上篇博客所说的进…

如何解决链游中可能出现的延迟或网络拥堵问题?

随着区块链技术的不断发展和普及&#xff0c;链游&#xff08;基于区块链的游戏&#xff09;作为新兴的娱乐形式&#xff0c;正逐渐走进大众的视野。然而&#xff0c;与传统游戏相比&#xff0c;链游在运行过程中可能会遇到一些特有的问题&#xff0c;其中最为突出的就是延迟和…

Windows hook介绍与代码演示

Windows Hook 是一种机制&#xff0c;允许应用程序监视系统或处理特定事件。它可以拦截和更改消息&#xff0c;甚至可以插入到其他应用程序的消息处理机制中。Windows 提供了多种挂钩类型&#xff0c;例如键盘挂钩、鼠标挂钩、消息挂钩等。 hook代码实现 下面是一个使用 Wind…

微服务架构下的‘黑带’安全大师:Spring Cloud Security全攻略!

深入探讨了微服务间的安全通信、安全策略设计以及面对经典安全问题的应对策略。无论你是微服务的新手还是资深开发者&#xff0c;都能在本文中找到提升安全功力的秘籍。让我们一起成为微服务架构下的‘黑带’安全大师&#xff01; 文章目录 1. 引言微服务安全挑战与重要性Sprin…

【软件工程】【23.04】p1

关键字&#xff1a; 软件模型、提炼、加工表达工具、通信内聚、访问依赖、边界类交互分析、RUP核心工作流、首先测试数据流、软件验证过程、CMMI过程域分类工程类&#xff1b; 软件工程目的、功能需求是需求的主体、结构化方法、耦合、详细设计工具、类、类图、RUP采用用例技…

rk3568_mutex

文章目录 前言1、什么是mutex?1.1mutex互斥体API函数二、实验2.1实验目的2.2源码2.3结果图前言 本文记录的是rk3568开发板基础上做的mutex实验 1、什么是mutex? mutex是互斥体,它是比信号量semaphore更加专业的机制。 在我们编写Linux驱动的时候遇到需要互斥的地方建议使用…

Nginx企业级负载均衡:技术详解系列(12)—— 深入解析root、alias及location

你好&#xff0c;我是赵兴晨&#xff0c;97年文科程序员。 在生产服务器的Nginx配置中&#xff0c;我们总会遇到形形色色的配置方案。你是否曾注意到root和alias指令的巧妙应用&#xff1f;是否对那些五花八门的location匹配规则感到好奇&#xff1f; 今天&#xff0c;咱们来聊…

微服务架构-分支微服务设计模式

微服务架构-分支微服务设计模式 这种模式是聚合器模式的扩展&#xff0c;允许同时调用两个微服务链 分支微服务设计模式是一种用于构建大型系统的微服务架构模式&#xff0c;其核心思想是 将复杂的业务逻辑拆解为多个小的、相互独立的子系统&#xff0c;每个子系统由一个或多…

家政项目day2 需求分析(模拟入职后熟悉业务流程)

目录 1 项目主体介绍1.1 项目背景1.2 运营模式1.3 项目业务流程 2 运营端需求2.1 服务类型管理2.2 服务项目&#xff08;服务&#xff09;管理2.3 区域管理2.4 区域服务管理2.5 相关数据库表的管理2.6 设计工程结构2.7 测试接口&#xff08;接口断点查看业务代码&#xff09; 1…

SQL学习小记(三)

SQL学习小记&#xff08;三&#xff09; 功能实现思路代码部分名词解释 代码打包为可执行文件 功能说明&#xff1a;使用python代码&#xff0c;将数据库database1中的表格table1同步到数据库database2中 功能实现 思路 #mermaid-svg-R1pWrEWA799M299a {font-family:"tre…

Redis 中 List 数据结构详解

目录 List 用法 1. 增 2. 删 3. 查 内部编码 应用场景 前言 Redis 中的 List 和 Set 数据结构各有特点&#xff0c;适用于不同的应用场景。List 提供了有序的列表结构&#xff0c;适合用于消息队列和任务列表等场景&#xff1b;Set 提供了无序且不重复的集合结构&#…

【全开源】旅游系统源码(Uniapp+FastAdmin+ThinkPHP)

一款基于UniappFastAdminThinkPHP开发的旅游系统&#xff0c;包含消费者端&#xff08;手机端&#xff09;、机构工作人员&#xff08;手机端&#xff09;、机构端&#xff08;PC&#xff09;、平台管理端&#xff08;PC&#xff09;。机构可以发布旅游线路、景点项目&#xff…

Wpf 使用 Prism 实战开发Day27

首页汇总和数据动态显示 一.创建首页数据汇总数据接口 汇总&#xff1a;待办事项的总数已完成&#xff1a;待办事项里面有多少条完成的待办完成比例&#xff1a;已完成和汇总之间的比例备忘录&#xff1a;显示备忘录的总数待办事项&#xff1a;显示待办事项未完成的集合备忘录&…

Java实现对PDF、纵向、横向页面添加自定义水印功能

Java实现对PDF、纵向、横向页面添加自定义水印 效果图 -- 纵向 页面PDF使用到JAR Maven依赖版本效果图 -- 横向页面PDF 效果图 – 纵向 页面PDF 代码如下&#xff1a; 使用到JAR Maven依赖版本 <dependency><groupId>org.apache.pdfbox</groupId><artifa…

视频监控平台AS-V1000 的场景管理,一键查看多画面视频的场景配置、调用、管理(一键浏览多路视频)

目录 一、场景管理的定义 二、场景管理的功能和特点 1、功能 &#xff08;1&#xff09;场景配置 &#xff08;2&#xff09;实时监控 &#xff08;3&#xff09;权限管理 2、特点 三、AS-V1000的场景配置和调用 1、场景配置 &#xff08;1&#xff09;实时视频预览 …

【Linux】Linux的权限_2 + Linux环境基础开发工具_1

文章目录 三、权限3. Linux权限管理修改文件的拥有者和所属组 4. 文件的类型5. 权限掩码 四、Linux环境基础开发工具1. yumyum 工具的使用 未完待续 三、权限 3. Linux权限管理 修改文件的拥有者和所属组 在上一节我们讲到如何更改文件的访问权限&#xff0c;那我们需要更改…

在VS Code中进行Java的单元测试

在VS Code中可以使用 Test Runner for Java扩展进行Java的测试执行和调试。 Test Runner for Java的功能 Test Runner for Java 结合 Language Support for Java by Red Hat 和 Debugger for Java这两个插件提供如下功能&#xff1a; 运行测试&#xff1a; Test Runner for …

算法打卡 Day13(栈与队列)-滑动窗口最大值 + 前 K 个高频元素 + 总结

文章目录 Leetcode 239-滑动窗口最大值题目描述解题思路 Leetcode 347-前 K 个高频元素题目描述解题思路 栈与队列总结 Leetcode 239-滑动窗口最大值 题目描述 https://leetcode.cn/problems/sliding-window-maximum/description/ 解题思路 在本题中我们使用自定义的单调队列…