【CSS】关于内联元素的 padding,margin,border

关于内联元素的 padding,margin,border 等等,它们并不是没有作用,而是不会影响元素的 line-height,就是说你的上下padding(或者margin,border)设得再大,它的 line-height 是不变的,所以高度上就看不出什么效果。这里我把背景色换成了边框便于观察:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>span问题</title>
<style type="text/css">
span{
  padding:20px;
        color:red;
        border:2px solid red;
}
</style>
</head>
<body><p style="width:18em; color:#999;"></p>
</body>
</html>

    可以看到 padding 是起作用的,但上下的文字并没有撑开——因为 line-height 没变。文字不够多,所以看不出效果,看起来似乎是 padding 没起作用,其实是 IE 按照 line-height 把多于的 padding 给切掉了。
下面的例子在 firefox 和 IE 下比较一下就可以看出为什么了:
  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>span问题</title>
<style type="text/css">
span{
  padding:50px; background-color:#666666; color:#FFFFFF; margin:50px;
}
p{border:1px solid red;}
</style>
</head>
<body>
<p><span>测试span</span>
</p>
</body>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值