2013-05-29 30 views
0

使梯形我想打一個梯形填充畫面,就像這樣:從圖像

Example

我不需要旋轉。我不需要傾斜圖片。 transform: matrix不起作用!

解決方案几乎只找到需要的兩段代碼連接:

background-image:url("http://3.bp.blogspot.com/-D9i-wqTIjFw/T5x_51p2rJI/AAAAAAAABLs/VytuZcJGNuY/s400/indahnya.jpg"); 

這一良好代碼:

.myShape { 
width: 0; 
height: 50px; 
border-left: 50px solid red; 
border-top: 20px solid transparent; 
border-bottom: 20px solid transparent; 

}

+1

我不認爲這是可能的2D變換;你需要'rotateY'的視角。 – Ryan

+1

例如,http://codepen.io/minitech/pen/GbDHn。你可以對任何圖像做同樣的事情。 – Ryan

+0

或者你是說你只是想將圖像裁剪成梯形區域? – Ryan

回答

2

使用CSS,你可以做出這樣的形狀。嘗試是這樣的:

.myShape { 
    width: 0; 
    height: 50px; 
    border-left: 50px solid red; 
    border-top: 20px solid transparent; 
    border-bottom: 20px solid transparent; 
} 

jsFiddle Demo

+0

好的。只是litlle細節:如何添加它的工作屬性:background-image:url(「http://3.bp.blogspot.com/-D9i-wqTIjFw/T5x_51p2rJI/AAAAAAAABLs/VytuZcJGNuY/s400/indahnya.jpg」); –

1

我知道這樣做有一個圖像是使用3D藉助透視變換的唯一途徑。所以,你的元素,你需要給它在y軸的旋轉:

#rectangle { 
    background-image: url("http://3.bp.blogspot.com/-D9i-wqTIjFw/T5x_51p2rJI/AAAAAAAABLs/VytuZcJGNuY/s400/indahnya.jpg"); 
    -webkit-transform: rotateY(45deg); 
      transform: rotateY(45deg); 
} 

然後給的perspective一定的參考價值父。

Here's a demo!

+0

沒關係。但不適用於Opera! –

+0

@JonMaximys:直到15.0。你無能爲力,真的...... – Ryan