回答
很簡單 - 使用<svg>
元素中的路徑繪製門。
<svg xmlns="http://www.w3.org/2000/svg" id="svg-door">
<defs>
<pattern id="wood" patternUnits="userSpaceOnUse" width="1024" height="768">
<image xlink:href="http://i.imgur.com/Ljug3pp.jpg" x="0" y="0" width="1024" height="768" />
</pattern>
</defs>
<path xmlns="http://www.w3.org/2000/svg" d="
M0,0 225,0 225,300 0,300 z
M165,10, 215,10 215,80 165,80 z
" fill="url(#wood)" fill-rule="evenodd"/>
</svg>
的CSS:
#svg-door {
background-image: url(http://pcdn.500px.net/15548893/7f3b7c411716b1fb29c5cffb3efcf8ce33eacd76/15.jpg);
background-size: cover;
box-sizing: border-box;
padding: 100px;
width: 100%;
height: 500px;
}
這種方法的好處是,你的背景可以是任何東西,窗口是一個真正的窗口(透視)。
我已經預先計算的路徑適合你,你可以找到,我已經從你的小提琴創建的叉子新的大門 - http://jsfiddle.net/teddyrised/qS4G7/
[編輯]爲了完整起見,我還使用了木紋爲svg路徑的背景圖像。
我建議使用HTML5的畫布這個例子。 http://www.html5canvastutorials.com
您是否有任何關於如何使用畫布可以實現的例子?由於我的門不是靜態的,我不確定這是否可以作爲選項 – CR41G14 2013-02-26 15:25:37
您的意思是這樣的? http://jsfiddle.net/UWyvz/3/
我基本上使用了一些木材並創建了一個窗格。
不,我複製了window
,但稱它windowpane
,然後將窗玻璃的z-index
到比window
的的較低並設置windowpane
的background-color
爲白色。
感謝您的回答,但我現在需要更逼真的樣子,但該示例仍然不透明 – CR41G14 2013-02-26 15:24:41
只需降低'window'類的不透明度?像這樣:http://jsfiddle.net/UWyvz/6/ – mattytommo 2013-02-26 15:26:25
@mattytommo - 窗戶不是雙層玻璃,並且對竊賊很大。最好讓這個蝙蝠俠! – 2013-02-26 16:17:48
可能是一個「醜陋的修補程序」,但它的工作原理:使用border-property
來模擬一個門(元素實際上是窗口)。
HTML
<div class="door"></div>
CSS
body {
background-image:url("http://wallpapers.free-review.net/wallpapers/42/Sun_in_white_cloud.jpg");
}
.door {
height:70px;
width:50px;
background-color:rgba(0, 0, 255, 0.4);
border-left: 175px solid orange;
border-top: 10px solid orange;
border-right: 10px solid orange;
border-bottom: 230px solid orange;
border-image:url("http://roundsquarewoodworking.com/wp-content/uploads/2010/07/wood-texture-background.jpg") 25% repeat;
}
編輯
更新的代碼,看到了「透視」效果。邊界並不完美,但我希望你明白這一點。
- 1. 在UIWebView上打個洞
- 2. Facebook的扇形閘門
- 3. FB扇門着陸頁
- 4. 我如何爲一個扇區上色
- 5. 在iPhone上打孔的TCP洞
- 6. 如何在opengl牆上打洞
- 7. 扇門和喜歡的應用程序
- 8. 在UIView中挖一個洞
- 9. 20個以上的硬幣打開門
- 10. 風扇門/頁一樣不與新的應用程序
- 11. 在GeoJson Shapes中打洞 - clipperLib
- 12. 如何在Piccolo2D中打洞?
- 13. 如何在點擊「贊」時阻止扇門/類似門重定向到牆
- 14. 在啓動盤上讀取一個扇區
- 15. 製作一個Python扇形圖/風扇疊加
- 16. 所以我試圖創建一扇門,可以在沒有動畫的情況下打開或滑動
- 17. 在SKNode上挖一個洞並在Swift中更新它的physicsBody
- 18. 如何在ASP中打開了一扇窗:我的UpdatePanel
- 19. Android畫布 - 畫一個洞
- 20. 在Inform7中鎖定一扇門在一種情況下工作,但不在另一種情況下
- 21. 誰在同一個部門
- 22. 用SpriteKit在矩形中畫一個洞?
- 23. 鑿洞上CCRenderTexture
- 24. 如何繪製一個BufferedImage的扇區?
- 25. 繪製一個扇形的矩形
- 26. 一個扇區的2D邊界框?
- 27. UDP打洞不打算通過對3G
- 28. 如何讓「內部」和「南部」通過Inform 7中的一扇門?
- 29. 一個JavaScript漏洞 - 「這個」 -stealing:
- 30. 誰可以專門解釋磁盤第一個扇區中剩餘的2個字節?
取決於您的需求,您可以將背景放入門格上方的窗口中,而不是在div中「切割一個洞」。 – gpasci 2013-02-26 15:17:42
感謝您的意見,我可以使用背景圖像來模擬透明度,我不能使用畫布,因爲門是3D並且可以移動 – CR41G14 2013-02-26 15:19:31
我建議使用'