求助,关于<li>宽度控制的问题_html/css_WEB-ITnose

WBOY
풀어 주다: 2016-06-21 09:47:23
원래의
1349명이 탐색했습니다.

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的默认属性。

  • 원천:php.cn
    본 웹사이트의 성명
    본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
    인기 튜토리얼
    더>
    최신 다운로드
    더>
    웹 효과
    웹사이트 소스 코드
    웹사이트 자료
    프론트엔드 템플릿
    회사 소개 부인 성명 Sitemap
    PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!