我想創造一些形狀像這樣:創建特殊形狀定製的div元素動態
這些都是3 shapes.Then我希望把一些元素在這個形狀。 我嘗試使用border-radius屬性,但它無法生成此形狀。 另外我嘗試使用<img>
,<map>
和<area>
但我有問題與放元素。 你對此有何想法?
我想創造一些形狀像這樣:創建特殊形狀定製的div元素動態
這些都是3 shapes.Then我希望把一些元素在這個形狀。 我嘗試使用border-radius屬性,但它無法生成此形狀。 另外我嘗試使用<img>
,<map>
和<area>
但我有問題與放元素。 你對此有何想法?
只是你必須有創意:
HTML:
<div id="circle">
<div id="cover"></div>
<div id="innerCircle">
<div id="rect1"></div>
<div id="rect2"></div>
</div>
</div>
CSS:
#circle {
width: 140px;
height: 140px;
background: red;
-moz-border-radius: 70px;
-webkit-border-radius: 70px;
border-radius: 70px;
margin: 0 auto;
position: relative;
top: -50px;
}
#innerCircle {
width: 90px;
height: 90px;
background: white;
-moz-border-radius: 70px;
-webkit-border-radius: 70px;
border-radius: 70px;
position: absolute;
top: 25px;
right: 25px;
}
#rect1 {
width: 20px;
height: 90px;
background: white;
transform: rotate(30deg);
-ms-transform: rotate(30deg); /* IE 9 */
-webkit-transform: rotate(30deg); /* Safari and Chrome */
position: absolute;
top: 50%;
left: 5px;
}
#rect2 {
width: 20px;
height: 90px;
background: white;
transform: rotate(-30deg);
-ms-transform: rotate(-30deg); /* IE 9 */
-webkit-transform: rotate(-30deg); /* Safari and Chrome */
position: absolute;
top: 50%;
right: 5px;
}
#cover {
width: 150px;
height: 80px;
background: white;
position: absolute;
top: 0px;
left: 0px;
}
或者你也可以做這樣的事情,彎曲兩側,並CSS3旋轉功能獲取三種形狀:
你可能會使用HTML5的畫布,以實現精確複雜的形狀,你的要求:
http://www.html5canvastutorials.com/tutorials/html5-canvas-custom-shapes/
謝謝你的回覆,但我需要3個元素。我需要生成這個元素動態。想象在數據庫和頁面加載中保存座標,在頁面上打印它們。 –
那麼你最好的選擇是使用圖像。爲什麼它需要成爲代碼? –
我想把元素放在這些元素上,這些元素是容器元素,我也需要爲我的容器元素設置邊界。如果我使用DIV標籤併爲其設置背景圖像,我還沒有綁定自定義形狀。現在我不知道我應該使用哪個元素。 –
使用''標籤,讓您有一個塊元素裏面畫,我認爲它是實現你想要的最簡單的方法。 –
Imperative
@Imperative你的意思是使用HTML5嗎?你可以做一個示例嗎?瀏覽器與這個元素的兼容性怎麼樣? –
看看這個頁面:很多樣品:http://www.html5canvastutorials.com/tutorials/html5-canvas-tutorials-introduction/ – Imperative