白光划过效果

本文介绍了如何使用CSS伪元素`:before`和`:after`来创建白光划过的效果,以及如何利用`:after`清除浮动,避免布局影响。示例代码展示了在鼠标悬停时应用过渡效果实现动态变化。同时,文章强调了伪元素配合`content`使用以及它们在DOM中的不可见性。

白光划过效果

CSS伪元素,::after

用于创建一个伪元素,作为已选中元素的最后一个子元素,配合content的属性为该元素添加修饰内容,该修饰内容属于虚拟内容,默认为行内元素;

:after 写在css中为标签之后添加新的内容;
::after写在HTML中的元素之后,增添新的内容;

都可以用来表示伪类对象,用来设置对象前后的内容;

  • 区别
    • :before/:after是css2的写法,::before/::after是css3的写法,从兼容性的角度,写:before/:after,但是在H5开发中建议使用::before/::after
  • 注意点
    • 伪元素需配合content使用
    • 伪元素不会出现在DOM中,无法使用js进行操作,仅仅在CSS渲染时加入
    • 伪元素的特效通常使用:hover激活

:after 清除浮动

元素设置浮动后,父元素和父元素的兄弟元素的布局都会受到影响,为避免这种浮动带来的影响,必须要清除浮动

  • 使用:after清除浮动的方法:
xx:after{
	content:"";
	display:block;
	width:0;
	height:0;
	clear:both;
}

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>玻璃划过</title>
    <link rel="stylesheet" href="day_5.css">
</head>
<body>
<div class="box">
    <h1>白光划过</h1>
</div>
</body>
</html>

CSS

* {
    margin: 0;
    padding: 0;
}

body {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100vh;
    overflow: hidden;
}

.box {
    position: relative;
    width: 300px;
    height: 200px;
    line-height: 200px;
    text-align: center;
    color: #ffffff;
    cursor: pointer;
    border-radius: 5px;
    background-image: linear-gradient(to right, #fb7299, #ff5c7c);
}

.box::after {
    content: "";
    position: absolute;
    top: 100px;
    left: 0;
    width: 600px;
    height: 70px;
    background-image: linear-gradient(rgba(0, 0, 0, 0), rgba(255, 255, 255, 0.3), rgba(0, 0, 0, 0));
    transform: rotate(-45deg) translate(0, -360px);
    transition:all .5s;
}

.box:hover {
    margin-top: -20px;
    box-shadow:3px 3px 3px rgba(0,0,0,0.2)
}
.box:hover::after{
    transition:1s;
    transform: rotate(-45deg) translate(0, 100px);
}

效果

白光划过效果

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

this_is_Azou

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值