使用css實(shí)現(xiàn)圓角圖形繪制

查看 demo
html
- <div class="curvedBox">
- <span>
- <span class="r1"></span>
- <span class="r2"></span>
- <span class="r3"></span>
- <span class="r4"></span>
- </span>
- <div class="content"> Flex is a cross-platform development framework for creating rich Internet applications (RIAs). Flex enables you to create expressive, high-performance applications that run identically on all major browsers and operating systems.
- </div>
- <span>
- <span class="r4"></span>
- <span class="r3"></span>
- <span class="r2"></span>
- <span class="r1"></span>
- </span>
- </div>
css
- body{background-color:#000;}
- .curvedBox{
- width:300px;
- margin: 2510px auto 0;
- }
- .curvedBox .r1,.curvedBox .r2,.curvedBox .r3,.curvedBox .r4{
- background-color:#fff;
- display:block;
- overflow:hidden;
- height:1px;
- font-size:1px;
- }
- .curvedBox .r2,.curvedBox .r3,.curvedBox .r4{
- border-width:0 1px;
- border-left:1px solid #fff;
- border-right:1px solid #fff;
- }
- .curvedBox .r1{margin:0 6px;}
- .curvedBox .r2{margin:0 3px;}
- .curvedBox .r3{margin:0 2px;}
- .curvedBox .r4{
- margin:0 1px;
- height:2px;
- }
- .curvedBox .content{
- background:#fff;
- border-left:1px solid #fff;
- border-right:1px solid #fff;
- padding:0 5px;
- }
這個(gè)方法其實(shí)并不完美,其實(shí)只是利用了”無限接近”的一個(gè)概念??捶糯蠛蟮膱D的話,可以很清楚地看到鋸齒狀。
其實(shí)把圖片放大足夠地倍數(shù)地話,也能看到鋸齒,不過放大地倍數(shù)得相當(dāng)大了。將 r1 r2 r3 r4 層疊起來,利用它們 margin(left/right) 的改變以及 border(left/right),來實(shí)現(xiàn)這個(gè)近似的效果。理論上,如果 rn 足夠多的話,效果就會(huì)無限趨近圓弧。不過話又說回來了,多加這么多的標(biāo)簽和css的話,在效率上必然會(huì)存在問題,也說不上就比用圖片好到哪里去。所以說,這只是提供一個(gè)思路,到底怎么用,用在哪里,還得因地制宜。
不過有第一點(diǎn)其實(shí)應(yīng)該注意的 rn{;overflow:hidden;} 這是解決 ie 下1像素高容器的方法,ie 下當(dāng)容器高度低于某些值時(shí)(如10px),即使指定
height:1px; 得到的表現(xiàn)都會(huì)遠(yuǎn)高于1px,而 overflow:hidden; 是一個(gè)很好的解決方法。
相關(guān)文章
- 這篇文章主要教大家CSS3制作圓角圖片和橢圓形圖片的具體實(shí)現(xiàn)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-07-08
- 本篇文章給大家介紹基于css3來實(shí)現(xiàn)邊框圓角效果,實(shí)現(xiàn)此效果當(dāng)然border-radius要在firefox或Safari 和 Chrome才能實(shí)現(xiàn)哦。對(duì)css3圓角邊框制作代碼感興趣的朋友參考下吧2015-11-18
- 這篇文章主要介紹了CSS的一些圓角圖形實(shí)例分享,包括帶有3D效果的CSS圓角實(shí)現(xiàn),需要的朋友可以參考下2015-09-28
- 這篇文章主要介紹了CSS3繪制圓角矩形的簡(jiǎn)單示例,注意一下各瀏覽器對(duì)CSS3的兼容性,需要的朋友可以參考下2015-09-28
- 這篇文章主要為大家介紹了純CSS實(shí)現(xiàn)圓角折疊菜單的方法,通過多個(gè)寬度漸進(jìn)變化的頁面元素堆加模擬圓角效果,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-05-19
- 這篇文章主要介紹了CSS實(shí)現(xiàn)反方向圓角的示例代碼的相關(guān)資料,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-10-12