2016-09-28 91 views
0

如何在這個div上直接設置文本和背景? transform屬性使它彎曲。Html transform屬性

#paralelogram { 
 
    margin-left: 190px; 
 
    width: 200px; 
 
    height: 80px; 
 
    transform: skew(-30deg); 
 
    background-image: url('http://lorempixel.com/200/80/animals/8/'); 
 
    position: relative; 
 
    overflow: hidden; 
 
} 
 
#cena { 
 
    font-size: 20px; 
 
    font-family: monospace; 
 
    font-weight: bold; 
 
    text-align: center; 
 
    vertical-align: middle; 
 
    position: absolute; 
 
    margin-left: 35px; 
 
    margin-top: 25px; 
 
}
<div class="col-xs-12 volks"> 
 
    <div id="paralelogram"> 
 
    <p id="cena">136,380 Kn</p> 
 
    </div> 
 
</div>

+0

我拿了把你的源成stacksnippet的自由。但是我看不出彎曲的意思。你可以解釋嗎? –

+1

刪除'transform:skew(-30deg);'?還是你不允許觸摸源代碼? –

+0

我假設OP希望'#paralelogram'容器傾斜,但不是文本或背景圖像。 – showdev

回答

0

一種替代的想法是使用clip-path掩蓋了標準桿allelogram形狀而不是transform:skew。目前的一個警告是有限的browser compatibility

我的例子是基於Harry'sanswer to "Shape with a slanted side (responsive)"

#parallelogram { 
 
    position: relative; 
 
    width: 240px; 
 
    height: 80px; 
 
    line-height: 80px; 
 
    text-align: center; 
 
    color: red; 
 
    background-color: grey; 
 
    background-image: url(http://lorempixel.com/g/240/80/); 
 
    -webkit-clip-path: polygon(20% 0%, 100% 0%, 80% 100%, 0% 100%); 
 
    clip-path: polygon(20% 0%, 100% 0%, 80% 100%, 0% 100%); 
 
}
<div id="parallelogram">136,380 Kn</div>

1

使用該圖像的僞然後反轉在其上的扭斜和ptransform: skew(30deg);

#paralelogram { 
 
    margin-left: 190px; 
 
    width: 200px; 
 
    height: 80px; 
 
    transform: skew(-30deg); 
 
    position: relative; 
 
    overflow: hidden; 
 
    background: gray; 
 
} 
 
#paralelogram:before { 
 
    content: ''; 
 
    width: 240px; 
 
    height: 100%; 
 
    top: 0; 
 
    left: -20px; 
 
    transform: skew(30deg); 
 
    background-image: url('http://lorempixel.com/240/80/animals/8/'); 
 
    background-repeat: no-repeat; 
 
    position: absolute; 
 
} 
 
#cena { 
 
    font-size: 20px; 
 
    font-family: monospace; 
 
    font-weight: bold; 
 
    text-align: center; 
 
    vertical-align: middle; 
 
    position: absolute; 
 
    margin-left: 35px; 
 
    margin-top: 25px; 
 
    transform: skew(30deg); 
 
}
<div class="col-xs-12 volks"> 
 
    <div id="paralelogram"> 
 
    <p id="cena">136,380 Kn</p> 
 
    </div> 
 
</div>

+0

不錯,但看起來像圖像沒有達到傾斜容器的邊緣。 – showdev

+0

@showdev這是一個簡單的解決方案,主要是僞造的技巧。 – LGSon

+0

@showdev更新了我的答案 – LGSon