目录
1. overflow定义和属性值
2.属性效果展示
2.1 overflow:visible;不裁剪超出盒子的部分
2.3 overflow:scroll 滚动条
2.3.3 overflow:scroll 强制滚动条
2.4 overflow:inherit 继承父元素overflow
ps
1. overflow定义和属性值
overflow 属性规定当内容溢出时发生的事情
overflow有以下几种属性值:
1.overflow:visible;不裁剪超出盒子的部分
2.overflow:hidden;将超出盒子部分的内容隐藏
3.overflow-x:scroll;横轴强制出现滚动条
4.overflow-y:scroll 纵轴强制出现滚动条
5.overflow:scroll x轴和y轴都有滚动条
6.overflow:auto;自动判断是否出现滚动条
7.overflow:inherit;从父元素继承overflow属性的值
overflow属性值中visible和hidden是对立的,scroll和auto是对立的。inherent是继承父级元素的overflow属性值,默认是scroll。
2.属性效果展示
2.1 overflow:visible;不裁剪超出盒子的部分
overflow:visible 不对属性样式进行修改
代码:
<style> .a{ width: 200px; height: 100px; background-color: aliceblue; } </style> </head> <body> <div class="a"> 我们中国人常说,嗜欲深者天机浅,嗜欲浅者天机深,就是说一个人如果一味沉溺于感官享受,这种人的智慧一定很浅薄。 只有从声色繁华中超脱出来,宁静沉思的人,才能具有把握纷繁人生和无穷宇宙的大智慧。而浅薄或智慧,完全在自己。 </div> </body>
复制
2.2 overflow:hidden;将超出盒子部分的内容隐藏;清除浮动
overflow:hidden 会将超出盒子的部分完全隐藏起来,并且还可以用来清除子元素内的浮动
首先来看一下他的隐藏效果
可以看到该属性把超出盒子部分的文本完全隐藏了起来
css
<style> .a{ width: 200px; height: 100px; background-color: aliceblue; overflow: hidden; } </style>
复制
清除浮动:
代码:
<style> .a{ width: 200px; background-color: rgb(42, 132, 210); } .p1{ background-color: aqua; float: left; } .p2{ background-color: azure; float: left; } .p3{ background-color: red; float: left; } </style> </head> <body> <div class="a"> <p class="p1">你好</p> <p class="p2">你好</p> <p class="p3">你好</p> </div> </body>
复制
代码原效果:
原效果中并没有设置父元素高度,所以就造成了高度塌陷,当添加了overflow:hidden 后就解决了这个问题
css:
.a{ width: 200px; background-color: rgb(42, 132, 210); overflow: hidden; } .p1{ background-color: aqua; float: left; } .p2{ background-color: azure; float: left; } .p3{ background-color: red; float: left; }
复制
2.3 overflow:scroll 滚动条
2.3.1 overflow-y: auto; overflow-x: hidden;
y轴判断是否有滚动条,x轴上滚动条隐藏
css
<style> .a{ width: 200px; height: 100px; background-color: aliceblue; overflow-y: auto; overflow-x: hidden; } </style>
复制
2.3.2 overflow-x: auto; overflow-y: hidden;
这里因为x轴上并未超出盒子所以不需要滚动条,auto也就没有显示滚动条
css
<style> .a{ width: 200px; height: 100px; background-color: aliceblue; overflow-x: auto; overflow-y: hidden; } </style>
复制
2.3.3 overflow:scroll 强制滚动条
不管内容是否超出都会出现滚动条
css
<style> .a{ width: 200px; height: 100px; background-color: aliceblue; overflow:scroll } </style>
复制
2.4 overflow:inherit 继承父元素overflow
可以看到下面的样式中有两个滚动条,内部样式是继承其父元素的
代码:
<style> .a { width: 200px; height: 100px; background-color: aliceblue; overflow: scroll } .b { overflow: inherit; } </style> </head> <body> <div class="a"> 我们中国人常说 <div class="b">嗜欲深者天机浅,嗜欲浅者天机深,就是说一个人如果一味沉溺于感官享受,这种人的智慧一定很浅薄。 只有从声色繁华中超脱出来,宁静沉思的人,才能具有把握纷繁人生和无穷宇宙的大智慧。而浅薄或智慧,完全在自己。</div> </div> </body>
复制
ps
如果有什么写的不好的地方还请各位大佬指点一二,不胜荣幸!