浏览网页的时候看到很多博客logo都有扫光效果,非常漂亮,于是就踏着大神的步伐一步步实现logo扫光效果,记录如下。Logo扫光效果思路非常简单,如下用CSS3伪元素:bfore或:after添加一扫光层;
现用transform:rotate(-45deg)旋转45度;
CSS控制位置和动画时间等。
HTML 结构
logo扫光效果的HTML结构如下/**
* logo扫光效果HTML 基本结构
*
* @author 智慧宫
* @link https://www.hanost.com
*/
CSS 3 动画代码/**
* logo扫光效果CSS代码
*
* @author 智慧宫
* @link https://www.hanost.com
*/
.site-logo{
position: relative;
overflow: hidden;
}
.site-logo:before {
content: "";
position: absolute;
width: 150px;
height: 10px;
background-color: rgba(255, 255, 255, 0.5);
-webkit-transform: rotate(-45deg);
transform: rotate(-45deg);
-webkit-animation: blink 1s ease-in 1s infinite;
animation: blink 1s ease-in 1s infinite;
}
@-webkit-keyframes blink {
from {left: 10px;top: 0;}
to {left: 320px;top: 0;}
}
@-o-keyframes blink {
from {left: 10px;top: 0;}
to {left: 320px;top: 0;}
}
@-moz-keyframes blink {
from {left: 10px;top: 0;}
to {left: 320px;top: 0;}
}
@keyframes blink {
from {left: -100px;top: 0;}
to {left: 320px;top: 0;}
}
动画使用方法参考:W3school
效果演示
@keyframes规则可以控制扫光动画的起始位置和终止位置,以上的参数根据自己的logo的大小和布局进行调整即可。具体效果如下: