我正在尝试使用伪元素做一些技巧。
我正在展示排名,我希望冠军能够在胜利者的顶部展示,在图像所在的角落倾斜45度。但是图像太大了,有没有办法让我调整伪元素上添加的图像的大小?
我只有div
:
<div class='box'></div>
使用此CSS
:
.box {
width: 50px;
height: 50px;
float: left;
border: 1px solid #000;
position:absolute;
top: 100px;
left: 100px;
}
.box::after{
content: url(URL_OF_IMAGE);
position: absolute;
top: -10px;
right: -10px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
}
我在JSFiddle上做了一个例子:http://jsfiddle.net/GEtds/
我尝试改变height
和width
,但没有效果。
答案 0 :(得分:5)
您可以将图片设置为background-image
,并与background-size: cover;
结合使用,这样您就可以通过设置width
和height
来控制图片的大小关于伪元素。您还需要添加content: "";
以确保呈现伪元素。
这是 jsFiddle
<强> CSS 强>
.box::after {
display: block;
content: "";
background-image: url(http://www.clker.com/cliparts/9/5/e/b/12428065451316964828Simple_crown_icon.svg.med.png);
background-size: cover;
position: absolute;
top: -10px;
right: -10px;
width: 40px;
height: 40px;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
}
答案 1 :(得分:5)
由于您已经在使用转换,请更进一步。使用它们移动和重新缩放图像:
.box::after{
content: url(http://www.clker.com/cliparts/9/5/e/b/12428065451316964828Simple_crown_icon.svg.med.png);
position: absolute;
top: -10px;
right: -10px;
width: 0.1em;
height: 0.1em;
-webkit-transform: translateY(-35px) rotate(45deg) scale(0.2);
-moz-transform: translateY(-35px) rotate(45deg) scale(0.2);
}