使用单个标签,如何实现下图所示的斜线效果。也就是如何使用 CSS 画斜线?
我们假定我们的 HTML 结构如下:
<div></div>
法一、CSS3 旋转缩放
这里我们使用 伪元素 画出一条直线,然后绕 div 中心旋转 45度 ,再缩放一下就可以得到。
具体实现css代码:
div{ position:relative; margin:50px auto; width:100px; height:100px; box-sizing:border-box; border:1px solid #333; // background-color:#333; line-height:120px; text-indent:5px; } div::before{ content:""; position:absolute; left:0; top:0; width:100%; height:50px; box-sizing:border-box; border-bottom:1px solid deeppink; transform-origin:bottom center; // transform:rotateZ(45deg) scale(1.414); animation:slash 5s infinite ease; } @keyframes slash{ 0%{ transform:rotateZ(0deg) scale(1); } 30%{ transform:rotateZ(45deg) scale(1); } 60%{ transform:rotateZ(45deg) scale(1.414); } 100%{ transform:rotateZ(45deg) scale(1.414); } }
法二、线性渐变实现
这种方法使用了背景的线性渐变实现,渐变背景很重要的一点是,虽然名字唤作渐变,但是也是可以画出实色而非渐变色。
我们选定线性渐变的方向为 45deg,依次将渐变色值设为:transparent -> deeppink -> deeppink ->transparent。
transparent 为透明色值。
就像这样简单的一句,即可实现斜线效果:
div{ background: linear-gradient(45deg, transparent 49.5%, deeppink 49.5%, deeppink 50.5%, transparent 50.5%); }
Atas ialah kandungan terperinci css怎么绘制斜线. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!