代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<style type="text/css">
body {
margin:0px;
padding:0px;
font-family:verdana, arial, sans-serif;
}
.blockelement{
width:700px;
height:120px;
border:20px solid yellow;
background-color:#3F6;
}
.inlineelement{
border:10px solid red;
background-color:gold;
text-align:center;
font-size:24px;
}
</style>
</head>
<body>
<div class="blockelement">
<span class="inlineelement">内联元素</span>
</div>
</body>
</html>
不理解为什么内联元素的上边框会“渗入”外围的边框,而左边框却不会。(块元素边框20px,而内联元素10px)我特地把边框加粗,这种效果更明显。
显示效果如下图所示:
要解决这个问题,在块元素中采用相对定位(加入position:relative;),内联元素采用绝对元素(position:absolute; top:0px; left:0px;)。代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<style type="text/css">
body {
margin:0px;
padding:0px;
font-family:verdana, arial, sans-serif;
}
.blockelement{
width:700px;
height:120px;
border:20px solid yellow;
background-color:#3F6;
position:relative;
}
.inlineelement{
position:absolute;
top:0px;
left:0px;
border:10px solid red;
background-color:gold;
text-align:center;
font-size:24px;
}
</style>
</head>
<body>
<div class="blockelement">
<span class="inlineelement">内联元素</span>
</div>
</body>
</html>
效果如下: