css中的:before与:after的简单使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了css中的:before与:after的简单使用相关的知识,希望对你有一定的参考价值。

直接上代码,不多说了!

画三角形

1)、

<style type="text/css">
			.triangle{
				width: 0;
				height: 0;
				/*border: 50px transparent solid;*//*当没有这句时,至少有2个方向的边框才能成形,比如下面的一组*/

				border-top: 50px solid black;
				border-right: 50px solid purple;
				/*border-bottom: 50px solid blue;
				border-left: 50px solid red;*/
			}
		</style>
<div class="triangle"></div>

  技术分享

2)、

<style type="text/css">
			.triangle1{
				width: 0;
				height: 0;
				border: 50px transparent solid;/*transparent表示边框颜色是透明的,solid表示边框是实线的*/
				border-top-color: black;
				border-bottom-color: black;
			}
		</style>
<div class="triangle1"></div>

  技术分享

 

 

3)、类似QQ或微信中的提示框,带有三角形的框

技术分享

<style type="text/css">
			.wechat-triangle{
				position: relative;
				width: 150px;
				height: 36px;
				border: 1px solid black;
				border-radius: 5px;
				background: rgba(245, 245, 245, 1);
			}

			/*.wechat-triangle:before{
				content: "";
				display: block;
				position: absolute;
				top: 8px;
				width: 0;
				height: 0;
				border: 6px transparent solid;
				left: -12px;
				border-right-color: rgba(245,245,245,1);
			}*/

			.wechat-triangle:before, .wechat-triangle:after{
				content: "";
				display: block;
				position: absolute;
				top: 8px;
				width: 0;
				height: 0;
				border: 6px transparent solid;
			}

			.wechat-triangle:before{
				left: -11px;
				border-right-color: rgba(245,245,245,1);
				z-index: 1;
			}

			.wechat-triangle:after{
				left: -12px;
				border-right-color: rgba(0,0,0,1);
				z-index: 0;
			}

			.wechat-triangle1{
				width: 120px;
				height: 30px;
				position: relative;
				border: 1px solid black;
				border-radius: 5px;
				background: rgba(245,245,245,1);
			}

			.wechat-triangle1:before, .wechat-triangle1:after{
				content: "";
				width: 0;
				height: 0;
				display: block;
				position: absolute;
				top: 5px;
				border: 4px transparent solid;
			}

			.wechat-triangle1:before{
				left: -8px;
				border-right-color: rgba(245,245,245,1);
				z-index: 1;
			}

			.wechat-triangle1:after{
				left: -9px;
				border-right-color: rgba(0,0,0,1);
				z-index: 0;
			}
		</style>

	<div class="wechat-triangle"></div>
	<div class="wechat-triangle1"></div>

  其中rgba是由颜色与透明度组成,透明度是[0,1]。

      

 

以上是关于css中的:before与:after的简单使用的主要内容,如果未能解决你的问题,请参考以下文章

:after/::after和:before/::before的区别

浅谈css的伪元素::after和::before

CSS 巧用 :before和:after

CSS 中的 &::before 和 &::after 是啥? [关闭]

如何用JQuery操作CSS伪文档元素before或after中的content

css:before:after 伪元素内容参考标签名。