求助,关于<li>宽度控制的问题_html/css_WEB-ITnose
HTML页面设计 网页布局
标签的使用 这个是我网页表示层的部分代码:
<body><form id="form1" ><div><ul style="width: 100%"><li style="width: 40%">abc</li><li style="width: 40%">def</li><li style="width: 20%">ghi</li></ul></div></form><body>
登入後複製
我的想法是让这三个列表项处在同一行,可是三个列表项并不在同一水平行。含有ghi的那个
标签自动下移了新一行的左边。
我后来设置了所有元素的border,padding,margin为none或者0,但结果还是开始一样显示的。
我就是搞不明白,三个
标签加起来的不正好是100%的width么?为什么会超过的width。我试了把最后一个- 标签的width改为19%,然后三个
- 就是并列显示了。(注:我已经设置了
- 的float为left了)。
大家能给我指点一下吗? 谢谢了!
回复讨论(解决方案)
li是块级元素,是会自动往下排的,而不像p,img这类行级元素会直接连在后面,style里加上float:left; 这个属性就可以了,会变成漂浮元素进行漂浮排列,最后最好在所有
- 后再加上一行清除漂浮,以免影响接下来的布局
li是块级元素,是会自动往下排的,而不像p,img这类行级元素会直接连在后面,style里加上float:left; 这个属性就可以了,会变成漂浮元素进行漂浮排列,最后最好在所有
- 后再加上一行清除漂浮,以免影响接下来的布局
不好意思,没有注意到最后你已经漂浮了,既然是19%有问题,估计是哪个margin或者padding出问题,可能没检查出来,试试在样式里面加上一句 *{margin:0;padding:0} 呢 假设ul在实际显示的时候宽度是789px,那么3个li标签的宽度分别是315.6px 315.6px 157.8px,应该是这个问题吧
一些老版本的浏览器不会认识float类型的宽度,造成了误差。一般在写代码时,就要考虑padding和magin的默认属性。
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
-
2024-10-22 09:46:29
-
2024-10-13 13:53:41
-
2024-10-12 12:15:51
-
2024-10-11 22:47:31
-
2024-10-11 19:36:51
-
2024-10-11 15:50:41
-
2024-10-11 15:07:41
-
2024-10-11 14:21:21
-
2024-10-11 12:59:11
-
2024-10-11 12:17:31