有没有办法在不改变元素宽度的情况下使用“border-collapse:collapse”?
发生了什么:当我不使用border-collapse属性时,右/左边框看起来是“粗体”,因为它们在一起。
如果我使用border-collapse属性,它会解决右/左边框的“粗体”问题,但菜单的宽度会比相同宽度的其他元素大。
body {
background-color: #EEEEEE;
margin: 20px;
max-width: 1280px;
min-width: 768px;
}
header {
}
#menu {
display: table;
width: 100%;
border-collapse: collapse;
}
#menu ul {
display: table-row;
}
#menu li {
display: table-cell;
height: inherit;
border: solid 1px;
padding: 0;
margin: 0;
}
#menu li a {
font-family: sans-serif;
text-align: center;
display: block;
line-height: 1.2em;
text-decoration: none;
color: black;
}
#menu li a:visited {
color:black;
}
#menu li:hover {
background-color: white;
}
#main {
background-color: white;
height: 600px;
border: 1px solid;
border-top: none;
border-bottom: none;
}
footer {
background-color: white;
height: 200px;
border: 1px solid;
}
http://jsfiddle.net/wHDMn/3/ http://i.stack.imgur.com/UroWQ.png
答案 0 :(得分:1)
从我所看到的,该表获得了一个更大的像素。您可以使用box-sizing: border-box
模型解决此问题。
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}