首先你得理解行内标签和块级标签的含义,
a标签是行内标签,设置宽高是无效的,
因为你要先把他转为块级标签
a {display:'block'
width:85px
}
对你疑问的解释:一句话:你 对A(display:block)的定位就是对它所在层的定位.
实践:在已设置尺寸的层里,增加Padding值 会增加层的实际尺寸的。
原理:这里的实际尺寸,举个例子,
<div class="divcontainer">
<div class="div01"><a href="#">aaaaaaaaaaa</a></div>
<div class="div02"><a href="#">bbbbbbbbbbb</a></div>
</div>
.div01{
float:left
width:200px
height:100px
padding:0 0 0 20px /* 问题出在这*/
}
.div02{
float:left
width:300px
height:200px
}
.divcontainer a{
display:bolck
background:url{bg01.gif) no-repeat
color:#000
}
.divcontainer a:hover{
display:bolck
background:url{bg02.gif) no-repeat
color:#fff
}
目的是两个带背景图片的层排成一排,但如果这么设定,两个层之间会有20px的间隙。因那个Paddding-left值。因背景图片尺寸已定。如果是背景颜色,二者
没有间隙,但层1的实际尺寸得+20px。 所以是无论是背景图片还是背景颜色, 若
1.定位层里面的元素。给层里面的元素(如字体),加标签(如p标签),在对P使用padding值,没错的。
2.定位该层,建议用Margin值。 不过得考虑IE6会产生双倍边距的问题,继续给该层添加一CSS属性:display:inline
帮到你了吗?
原因有:
1.单设置背景色,效果基本是一样;
2.设置了边框,Padding值,效果会出现各异。
边框:因为IE 和 火狐对边框的解释不一样。在已设置尺寸的层里,IE浏览器解释最终宽度要加上边框的宽度的(这一点确实很恼人)。而火狐,边框是包含在设定的尺寸里面的。
解决办法,用HACK 对付IE,将尺寸设置预留出边框的尺寸。也就是说,二者相加刚好是你需要的尺寸了。
Padding值:在已设置尺寸的层里,增加Padding值 会增加层的实际尺寸的。
解决办法:
1.若padding值是来对子元素进行定位的话,不要设置具体的尺寸。就是说,父元素不设置具体的尺寸(为auto 或者不设),对齐设置padding值来定位子元素。
2. 若父元素尺寸固定,子元素尺寸不固定的,那就对子元素设置padding值,如此而已。
line-height是行高,不是指a的高度a属于没有宽高的内联元素,其高度受到字体大小和字数,行高等影响
如果你设置了统一的样式,字数一样的情况下是不会有差别的
这个差别的出现你可以检查一下是否因为内容的差异造成的
还有就是一般来说,我们都会设置a元素成为块元素,让它完全
填充li,这样你想点击a标签时会更大的范围,更好点击
-------
其次我非常不建议你乱使用>这个标识,这是在html中容易造成混乱
你一个疏忽将会很难找出异常
最后有用别忘记采纳哦亲