CSS-8.2-CSS盒模型相关属性

盒模型相关属性
1.overflow:内容溢出控制
2.outline:外围线
3.box-shadow:盒子阴影
4.border-radius:边框圆角
5.border-image:图片边框

一:overflow:内容溢出控制

  • 规定了内容溢出盒子时如何处理
  • 属性值
    • visible:默认,内容不会修剪会呈现在元素框之外
    • auto:根据内容多少选择显示滚动条,文字多的时候显示滚动条
    • scroll:无论文字多少,都会显示垂直和水平两个滚动条
    • hidden:超出区域的文字直接隐藏,无法看到
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>内容溢出控制</title>
	<style type="text/css">
		div{
			width: 65px;
			height: 65px;
		}
		/* 内容不会被修剪,会呈现在元素框之外 */
		.div1{
			background-color: #f00;
		}
		/* 根据内容多少选择显示滚动条
		文字多的时候显示滚动条 */
		.div2{
			background-color: #0f0;
			overflow: auto;
		}
		/* 无论文字多少,都会显示垂直和水平两个滚动条 */
		.div3{
			background-color: #00f;
			overflow: scroll;
		}
		/* 超出区域的文字直接隐藏,无法看到 */
		.div4{
			background-color: #0ff;
			overflow:hidden;
		}
		/* 超出区域的文字使用省略号代替 */
		.div5{
			height: 70px;
			background-color: #ff0;
			overflow: hidden;
			text-overflow: ellipsis;
			/* 将对象作为伸缩模型显示 */
			display: -webkit-box;
			/* 显示的行数 */
			-webkit-line-clamp:4;
			/* 设置或检索伸缩盒对象的子元素的排列顺序 */
			-webkit-box-orient:vertical;
		}
	</style>
</head>
<body>
	<div class="div1">
		内容不会被修剪,会呈现在元素框之外
	</div> <br> <br>
	<div class="div2">
		根据内容多少选择显示滚动条,文字多的时候显示滚动条
	</div> <br> <br>
	<div class="div3">
		无论文字多少,都会显示垂直和水平两个滚动条
	</div> <br> <br>
	<div class="div4">
		超出区域的文字直接隐藏,无法看到
	</div> <br> <br>
	<div class="div5">
		超出区域的文字使用省略号代替代替代替代替
	</div>
</body>
</html>

效果图
在这里插入图片描述

注意
可以使用 overflow-x 和 overflow-y 设置水平和垂直方向的滚动条是否显示

二:outline:外围线

  • 显示在边框边缘外围的一条线,起到突出元素的作用
  • 外围线的属性写法与边框相同
  • 外围线不会占用空间
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>外围线</title>
	<style type="text/css">
		div{
			width: 100px;
			height: 100px;
			background-color: #0ff;
		}
		/* 添加边框会占用空间 */
		.div1{
			border: 10px solid #ff0;
		}
		/* 添加外围线不会占用空间 */
		.div2{
			outline: 10px dotted #0f0;
		}
	</style>
</head>
<body>
	<div class="div1"></div>
	<span>
		div添加border,边框会占用空间,不会盖住周围的文字
	</span>
	<div class="div2"></div>
	<span>
		div添加outline,外围线不会占用空间,会盖住周围的文字
	</span>
</body>
</html>

效果图
在这里插入图片描述

三:box-shadow:盒子阴影

  • 给元素周围添加阴影效果
  • 属性值
    • X轴阴影距离
      • 必写,可正可负
      • 正值右移,负值左移
    • Y轴阴影距离
      • 必写,可正可负
      • 正值下移,负值上移
    • 阴影模糊半径
      • 可写,只能为正,默认值为0
      • 数值越大,阴影越模糊
    • 阴影扩展半径
      • 可写,可正可负,默认值为0
      • 数值越大,阴影扩大
      • 数值越小,阴影缩小
    • 阴影颜色
      • 可写,默认黑色
    • 内外阴影
      • 可写,默认外外阴影
      • inset:内阴影
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>盒子阴影</title>
	<style type="text/css">
		div{
			width: 100px;
			height: 100px;
			background-color: #0ff;
			box-shadow: 5px 5px 10px 10px red;
		}
	</style>
</head>
<body>
	<div></div>
</body>
</html>

效果图
在这里插入图片描述

四:border-radius:边框圆角

  • border-radius是一个简写属性
  • 可以设置一个元素四个边框的圆角,也可以单独为其中一个角设置圆角样式

border-radio的属性两种写法
1.使用带单位的数值
2.使用百分比设置

单独设置一个角样式
1.border-top-left-radio:设置左上角圆角样式
2.border-top-right-radio:设置右上角圆角样式
3.border-bottom-right-radio:设置右下角圆角样式
4.border-bottom-left-radio:设置左下角圆角样式

设置一个元素四个边框的圆角
1.border-radius: 40px 30px 20px 10px/50px 40px 30px 20px;
2."/前后各有四个值",依次对应的是左上角、右上角、右下角、左上角
3."/“前表示四顶点沿X轴移动的距离,”/"后表示四顶点沿Y轴移动的距离
4.移动完成后,用弧线连接

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>爱心</title>
	<style type="text/css">
		div{
			width: 100px;
			height: 150px;
			background-color: #f00;
			/* 边框圆角
			仅设置X轴左上角右上角60px,右下角左下角0
			Y轴与X轴相同
			 */
			border-radius: 60px 60px 0 0 ;
			line-height: 100px;
			text-align: center;
		}
		/* CSS3transform变换属性
		简写属性,分开来写会失效
		 */
		.div1{
			transform:translate(60px, 50px) rotate(-45deg);
			 
		}
		.div2{
			transform:translate(96px,-100px) rotate(45deg);
			
		}
	</style>
</head>
<body>
	<div class="div1">1</div>
	<div class="div2">2</div>
</body>
</html>

效果图
在这里插入图片描述

五:border-image:图片边框

  • 当前盒子设置一个图片边框
    • 使用图片进行裁切作为边框显示
  • 代替boder-style边框样式

border-image:图片边框
1.border-image-source:图片路径
2.border-image-slice:图片切片宽度
3.border-image-width:边框宽度
4.border-image-repeat:图片重复方式
5.border-image:简写方式

1、border-image-source:图片路径

  • 用于当作边框的图片地址
    • 使用url()引入图片路径
/* 图片路径 */
border-image-source:url(./background.jpg)

2、border-image-slice:图片切片宽度

  • 由4个值,代表上、右、下、左4条切线,通过4条切线切割,可以将图片分为9宫格
    • 9宫格4个角分别对应边框的4个角(不会进行任何拉伸)
    • 9宫格4条边分辨对应4条边框(会根据设置进行拉伸,铺满,重复等操作)
/* 图片切片 */
border-image-slice:27px 27px 27px 27px;
/* 表示4条切线都是27px */
border-image-slice:27px;

3、border-image-width:边框宽度

  • 边框宽度表示图片边框的宽度大小,使用规则与border类似
/* 边框宽度 */
border-image-width:10px 10px 10px 10px;
/* 表示4条边框的宽度都是10px */
border-image-width:10px;

4、border-image-repeat:图片重复方式

  • 设置边框区域图片的重复方式
  • 属性值
    • stretch:拉伸
    • round:铺满
    • repeat:重复

铺满和重复的区别
1.重复会保持原有4条边的宽度,可能导致角落处无法显示完整一个图标
2.铺满会对4条边进行适当地拉伸、压缩,确保可以正好显示完全

5、border-image:简写方式

/* 图片边框简写 */
border-image:url(./background.ing) 27/10px stretch;
/* webkit浏览器内核专用 */
-webkit-border-image:url(./background.ing) 27/10px repeat;

注意
1.缩写时的顺序必须按照图片路径、切片宽度、边框宽度、重复方式
2.切片宽度和边框宽度用“/”分隔,且只能在边框宽度后带一个px单位

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值