[英]::after pseudo element appearing before
I'm trying to create a subtle wave on the top and bottom of a gradient. 我正试图在渐变的顶部和底部创建一个微妙的波。 However, the ::after pseudo element is appearing before the main content and not after.
但是,:: after伪元素出现在主要内容之前而不是之后。 Currently it's showing as ::before, ::after, main content, but I want it to show as ::before, main content, ::after.
目前它显示为:: before,:: after,主要内容,但我希望它显示为:: before,main content,:: after。
Here's my code: 这是我的代码:
#gradient { background: #0068a9;/* For browsers that do not support gradients */ background: -webkit-linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Safari 5.1-6*/ background: -o-linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Opera 11.1-12*/ background: -moz-linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Fx 3.6-15*/ background: linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Standard*/ width: 100%; height: 300px; min-height: 0px; display: block; } #gradient::before, #gradient::after { display: block; content: ""; width: 100%; height: 75px; } #gradient::before { background: #f2f2f2 url("http://www.qumidesignco.com/clients/preparedcapital/pc_topcurve.png") center top; } #gradient::after { background: #f2f2f2 url("http://www.qumidesignco.com/clients/preparedcapital/pc_bottomcurve.png") center top; }
<div style="background:#f2f2f2; width: 100%; height: 300px; min-height: 0px; display:block;"></div> <div id="gradient"></div> <div style="background:#f2f2f2; width: 100%; height: 300px; min-height: 0px; display:block;"></div>
It is appearing after normally. 它正常出现后。 The problem is your div height.
问题是你的div高度。 I added backgrounds to show where they are.
我添加了背景来展示它们的位置。 Red is before and green is after
红色在之前,绿色在之后
#gradient { background: #0068a9;/* For browsers that do not support gradients */ background: -webkit-linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Safari 5.1-6*/ background: -o-linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Opera 11.1-12*/ background: -moz-linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Fx 3.6-15*/ background: linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Standard*/ width: 100%; height: 150px; min-height: 0px; display: block; } #gradient::before, #gradient::after { display: block; content: ""; width: 100%; height: 75px; } #gradient::before { background: #f2f2f2 url("http://www.qumidesignco.com/clients/preparedcapital/pc_topcurve.png") center top; background-color: red; } #gradient::after { background: #f2f2f2 url("http://www.qumidesignco.com/clients/preparedcapital/pc_bottomcurve.png") center top; background-color: green; }
<div style="background:#f2f2f2; width: 100%; height: 300px; min-height: 0px; display:block;"></div> <div id="gradient"></div> <div style="background:#f2f2f2; width: 100%; height: 300px; min-height: 0px; display:block;"></div>
Make your gradient div
relative
, :before and :after
absolute
and top:0
in :before
and bottom:0
in :after
使
gradient div
relative
, :before and :after
absolute
和top:0
in :before
和bottom:0
in :after
#gradient { background: #0068a9;/* For browsers that do not support gradients */ background: -webkit-linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Safari 5.1-6*/ background: -o-linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Opera 11.1-12*/ background: -moz-linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Fx 3.6-15*/ background: linear-gradient(rgba(0, 104, 169, 1), rgba(0, 104, 169, .9));/*Standard*/ width: 100%; height: 300px; min-height: 0px; display: block; position: relative; } #gradient::before, #gradient::after { display: block; content: ""; width: 100%; height: 75px; position: absolute; } #gradient::before { background: #f2f2f2 url("http://www.qumidesignco.com/clients/preparedcapital/pc_topcurve.png") center top; top:0; } #gradient::after { background: #f2f2f2 url("http://www.qumidesignco.com/clients/preparedcapital/pc_bottomcurve.png") center top; bottom: 0; }
<div style="background:#f2f2f2; width: 100%; height: 300px; min-height: 0px; display:block;"></div> <div id="gradient"></div> <div style="background:#f2f2f2; width: 100%; height: 300px; min-height: 0px; display:block;"></div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.