div+css打造可變高寬的圓角框
發(fā)布時間:2011-07-10 21:59:47 作者:佚名
我要評論

矩形框在網(wǎng)頁中較為常見,不過個人覺得還是圓角框更為美觀。那么圓角框是如何用DIV+CSS來實現(xiàn)的呢?
假如把一張圓角框圖片直接作為背景來處理,那么高寬就都被定死了,無法隨內容而改變大小。今天,我學會了一種方法來設計可變高寬的圓角框。先來看看效果圖:
<div id="m_category" class="round2">
<h3>管理中心</h3>
<div class="con">
<p><a href="Categorymanager.aspx">類別管理</a></p>
<p><a href="Newsmanager">新聞管理</a></p>
<p><a href="Addnews">添加新聞</a></p>
</div>
<div class="footer">
<p> </p>
</div>
</div>
css
*
{
padding:0;
margin:0;
}
body
{
font-size:14px;
}
a:link, a:visited
{
color: #000;
text-decoration: none;
}
a:hover
{
color: #00f;
text-decoration: underline;
}
#m_category
{
width:200px;
}
#m_category .con p
{
padding:10px;
}
.round2
{
background-image:url("../images/round2_left_top.gif");
background-position:top left;
background-repeat:no-repeat;
}
.round2 h3
{
background:url("../images/round2_right_top.gif") no-repeat top right;
padding-left:35px;
padding-top:12px;
padding-bottom:12px;
font-size:16px;
font-weight:bold;
}
.round2 .con
{
height:200px;
padding:0 20px;
background:url("../images/round2_right_middle.gif") repeat-y top right;
}
.round2 .footer
{
background:url("../images/round2_left_bottom.gif") no-repeat bottom left;
}
.round2 .footer p
{
background:url("../images/round2_right_bottom.gif") no-repeat bottom right;
}
從上述代碼中可以看到,round2將圖片1作為了背景,h3標簽將圖片2作為了背景,con將圖片3作為了背景,foote中的p標簽將圖片4作為了背景,footer將標簽5作為了背景。我們先從最底下的那層開始講起。當round2中的內容不足以填滿第1個圖片時,那么只顯示圖片1的部分。此時,將圖片5疊加到圖片1上。這樣就達到了控制高度的目的??刂茖挾绕鋵嵰彩峭粋€原理。我們通過h3標簽和p標簽將圖片2和圖片4疊加到圖片1和圖片5上,這樣就實現(xiàn)了可變寬度。剩下的只要讓con中的圖片3沿y軸平鋪下來,那么整個圓角框的結構就形成了。
這種通過將圓角框分割成5個圖片來控制高寬的方法,雖然達到了可變高寬的目的,但是缺點很明顯,就是圖片1需要切的比較大。有沒有更好的方法呢?網(wǎng)上我看到了一種不需要背景圖片來實現(xiàn)可變高寬圓角框的方法。
為了達到可變高寬的效果,首先應將圖片分割成五塊。如下圖:
為什么這么分割?為什么圖片1需要切成這么大呢?這樣就能實現(xiàn)可變高寬了?這些問題不急于回答,我們不妨先來閱讀下源碼。
復制代碼
代碼如下:<div id="m_category" class="round2">
<h3>管理中心</h3>
<div class="con">
<p><a href="Categorymanager.aspx">類別管理</a></p>
<p><a href="Newsmanager">新聞管理</a></p>
<p><a href="Addnews">添加新聞</a></p>
</div>
<div class="footer">
<p> </p>
</div>
</div>
css
復制代碼
代碼如下:*
{
padding:0;
margin:0;
}
body
{
font-size:14px;
}
a:link, a:visited
{
color: #000;
text-decoration: none;
}
a:hover
{
color: #00f;
text-decoration: underline;
}
#m_category
{
width:200px;
}
#m_category .con p
{
padding:10px;
}
.round2
{
background-image:url("../images/round2_left_top.gif");
background-position:top left;
background-repeat:no-repeat;
}
.round2 h3
{
background:url("../images/round2_right_top.gif") no-repeat top right;
padding-left:35px;
padding-top:12px;
padding-bottom:12px;
font-size:16px;
font-weight:bold;
}
.round2 .con
{
height:200px;
padding:0 20px;
background:url("../images/round2_right_middle.gif") repeat-y top right;
}
.round2 .footer
{
background:url("../images/round2_left_bottom.gif") no-repeat bottom left;
}
.round2 .footer p
{
background:url("../images/round2_right_bottom.gif") no-repeat bottom right;
}
從上述代碼中可以看到,round2將圖片1作為了背景,h3標簽將圖片2作為了背景,con將圖片3作為了背景,foote中的p標簽將圖片4作為了背景,footer將標簽5作為了背景。我們先從最底下的那層開始講起。當round2中的內容不足以填滿第1個圖片時,那么只顯示圖片1的部分。此時,將圖片5疊加到圖片1上。這樣就達到了控制高度的目的??刂茖挾绕鋵嵰彩峭粋€原理。我們通過h3標簽和p標簽將圖片2和圖片4疊加到圖片1和圖片5上,這樣就實現(xiàn)了可變寬度。剩下的只要讓con中的圖片3沿y軸平鋪下來,那么整個圓角框的結構就形成了。
這種通過將圓角框分割成5個圖片來控制高寬的方法,雖然達到了可變高寬的目的,但是缺點很明顯,就是圖片1需要切的比較大。有沒有更好的方法呢?網(wǎng)上我看到了一種不需要背景圖片來實現(xiàn)可變高寬圓角框的方法。
相關文章
- 字符代替圓角尖角也是一種在不使用代碼和圖片的另類實現(xiàn)吧,本文整理了一些常用的示例,感興趣的朋友可以收藏下2013-09-12
- css圓角效果的出現(xiàn)引起了網(wǎng)友們的關注,下面以個示例為大家介紹下具體的實現(xiàn)過程,帶有注釋,新手朋友們容易看的懂2013-09-04
- 想做個頁面用到css3的圓角和陰影效果,但ie瀏覽器不支持,之前也聽說有插件可以實現(xiàn),周六在網(wǎng)上找到了一個方法,原文如下: 但凡是前端工程師,都知道IE6,IE7,IE8不支2013-07-02
- css圓角卷起了一陣風波,只用css來做圓角矩形的技術很早就有了,但是在網(wǎng)頁的設計過程中,我們通常用圖片實現(xiàn)圓角矩形效果?,F(xiàn)在網(wǎng)上很多關于無圖片實現(xiàn)css圓角矩形的方法,雖2013-03-25
- css 圓角邊框的出現(xiàn)結束了傳統(tǒng)使用圓角圖片的時代,接下來與大家分享下div 邊框圓角的實現(xiàn),感興趣的你可以參考下哈,希望對你有所幫助2013-03-15
- 本文將開拓性的探討如何使用字符代替圖片實現(xiàn)貌似只有圖片才能實現(xiàn)的尖角效果,或是多半使用圖片實現(xiàn)的圓角效果;本文提到的一些方法,可能在實際項目中并不實用,關鍵是幫2013-02-27
css實現(xiàn)圖片圓角 兼容所有瀏覽器實現(xiàn)代碼
今天處理了一個頁面刷新隨機顯示圖片的功能,發(fā)現(xiàn)直角太丑,想實現(xiàn)圖片圓角,兼容所有瀏覽器,于是網(wǎng)上搜集整理了一下,拿出來和大家分享2012-12-06CSS圓角效果 -webkit-border-radius(CSS3中border-radius隱藏的威力)
border-radius:用這個屬性能實現(xiàn)圓角邊框的效果?,F(xiàn)在只有Mozilla/Firefox 和 Safari 3支持該屬性。2012-03-28- 實現(xiàn)的方法很簡單,其實就是套2層,其中外層用長背景,內層用短背景蓋住。拿高度自適應來說,可以用一個div(用長背景居底鋪)嵌套一個h2(用短背景居頂鋪)標簽2012-02-17
background-postion定位與圖片結合實現(xiàn)圓角效果
background-postion 背景默認鋪設位置的起點為:元素的左上角.2011-07-27