首先想一想,请不要回答“使用border-radius + css3pie或jquery插件”:我知道还有其他方法可以用css3做到这一点,但我不介意。
这是我的全部代码:
.menu_books_top-bottom { width:171px; height:7px; background-color:#76614C; float:left;}
.menu_books_center { width:155px; background-color:#76614C; padding:10px 15px 10px 15px; float:left;}
.menu_books_top-left {width:7px; height:7px; background-image:url(../images/borders/menu_books_top-left.png); float:left;}
.menu_books_top-right {width:7px; height:7px; background-image:url(../images/borders/menu_books_top-right.png); float:left;}
.menu_books_bottom-right {width:7px; height:7px; background-image:url(../images/borders/menu_books_bottom-right.png); float:left;}
.menu_books_bottom-left {width:7px; height:7px; background-image:url(../images/borders/menu_books_bottom-left.png); float:left;}
<div class="menu_books_top-left"> </div>
<div class="menu_books_top-bottom"> </div>
<div class="menu_books_top-right"> </div>
<div class="menu_books_center">
Content
</div>
<div class="menu_books_bottom-left"> </div>
<div class="menu_books_top-bottom"> </div>
<div class="menu_books_bottom-right"> </div>
但正如你所看到的,它看起来并不那么好!还有其他方法可以做同样的事情吗?或者我可以更好地使用此代码(例如经典方法)吗?
Here你可以找到一个例子。 (红色=带边框的图像)
答案 0 :(得分:2)
你可以写下我以下所写的内容。这将避免分手。
<div class="content">
<span class="menu_books_top-left"> </span>
<span class="menu_books_top-bottom"> </span>
<span class="menu_books_top-right"> </span>
<span class="menu_books_center">
Main
</span><!-- content here -->
<span class="menu_books_bottom-left"> </span>
<span class="menu_books_top-bottom"> </span>
<span class="menu_books_bottom-right"> </span>
</div><!-- end of .content -->
答案 1 :(得分:2)
考虑到I know you need IE6的支持,你所拥有的东西似乎是合理的。
我重组了它并稍微清理了一下。
请参阅: http://jsfiddle.net/5wzC2/
我还确保它在现代浏览器和IE6中看起来一样。
div
更改为span
s(如@SirB的答案)。
,并添加了line-height:0; font-size:0
来修复IE6。corner
课程,以删除width:10px; height:10px;
float:left
的所有欺骗行为。menu_books
的实例。background-image
更改为仅background
,这在此处有效且稍短。所以是的,只是一堆迂腐的变化。
答案 2 :(得分:1)
你不需要上下潜水。你可以这样做的方法是创建4个图像,其中包含四个圆角。使它们比实际需要的大,并将它们与他们尊重的角落对齐。这不会给页面增加太多的重量(如果有的话),因为通常它们是两种颜色,你可以使用gif。
<div class="menu_books_top-left"> </div>
<div class="menu_books_top-right"> </div>
<div class="menu_books_center">
Content
</div>
<div class="menu_books_bottom-left"> </div>
<div class="menu_books_bottom-right"> </div>