css实现左右两边竖条的多种方法总结
实现效果如下:
css假设我们的单标签是一个 p:
<p></p>定义如下通用CSS:
p{
position:relative;
width:200px;
height:60px;
background:#ddd;
}方法一:border
p{
border-left:5px solid deeppink;
}因为初始化时没有设置box-sizing:border-box,所以默认还是content-box。这里用到的知识点是W3C盒模型。
方法二:使用伪元素
p::after{
content:"";
width:5px;
height:60px;
position:absolute;
top:0;
left:0;
background:deeppink;
}一个标签,算上 before 与 after 伪元素,其实算是有三个标签,这也是很多单标签作图的基础,本题中,使用伪元素可以轻易完成。
方法三:外 box-shadow
p{
box-shadow:-5px 0px 0 0 deeppink;
}盒阴影 box-shadow 大部分人都只是用了生成阴影,其实阴影可以有多重阴影,阴影不可以不虚化,这就需要去了解一下 box-shaodw 的每一个参数具体作用。使用 box-shaodw 解题
方法四:内 box-shadow
p{
box-shadow:inset 5px 0px 0 0 deeppink;
}盒阴影还有一个参数 inset ,用于设置内阴影,也可以完成:
方法五:drop-shadow
p{
filter:drop-shadow(-5px 0 0 deeppink);
}drop-shadow 是 CSS3 新增滤镜 filter 中的其中一个滤镜,也可以生成阴影,不过它的数值参数个数只有 3 个,比之 box-shadow 少一个。
方法六:渐变 linearGradient
p{
background-image:linear-gradient(90deg, deeppink 0px, deeppink 5px, transparent 5px);
}灵活使用 CSS3 的渐变可以完成大量想不到的图形,CSS3 的渐变分为线性渐变和径向渐变,本题使用线性渐变,可以轻易解题:
方法七:轮廓 outline
p{
height:50px;
outline:5px solid deeppink;
}
p::after{
position:absolute;
content:"";
top:-5px;
bottom:-5px;
right:-5px;
left:0;
background:#ddd;
}这个用的比较少,outline (轮廓)是绘制于元素周围的一条线,位于边框边缘的外围,可起到突出元素的作用。这个方法算是下下之选。
方法八、滚动条
p{
width:205px;
background:deeppink;
overflow-y:scroll;
}
p::-webkit-scrollbar{
width: 200px;
background-color:#ddd;
}这个方法由 小火柴的蓝色理想 提供,通过改变滚动条样式实现
本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!