Heim >Web-Frontend >HTML-Tutorial >div+css小疑问。_html/css_WEB-ITnose

div+css小疑问。_html/css_WEB-ITnose

WBOY
WBOYOriginal
2016-06-21 09:44:23985Durchsuche

CSS


大家看一下这个left 和right 共同被一个#maincontainer  div包裹。
代码如下。
   #left        {            background: #eee;            width: 350px;            height: 400px;            float: left;        }        #right        {            background: #ccc;            width: 150px;            height: 400px;            float: right;        }        #maincontainer        {            width: 500px;            overflow: auto;                    }        #foot        {            background: #eee;            width: 500px;            height: 100px;        }


运行起来是没有问题的  “这里为什么出现?” 是没有的。

但是为什么设计页面中要空出这一块呢? 我并没有设置#maincontainer的height。
也没有任何的边框。为什么出现那一块了呢? 运行起来却没有问题。看着真别扭。
求大神帮解答。

回复讨论(解决方案)

#foot{
 clear:both 
}
试试

*{margin:0;padding:0;}

LZ啥浏览器?

1楼和2楼的办法都可以试试

        #foot        {            clear:both;            background: #eee;            width: 500px;            height: 100px;        }

测试了IE7、8、9、10和chrome,在IE7中出现这种现象,正在找解决方式。

<!doctype html><!-- Saved from html5snippet.net --><html><head><meta http-equiv='Content-Type' content='text/html; charset=utf-8'/><style type='text/css'>body {background:lightblue;}div {margin:0;padding:0;}#left     {         background: #aaa;         width: 35%;         height: 400px;         float: left;     }     #right     {         background: #ccc;         width: 65%;         height: 400px;         float: right;              }                   #maincontainer     {       clear:left;       background: red;         width: 100%;     }       #foot     {                 background: #eee;         width: 100%;         height: 100px;     }</style><script type='text/javascript'></script></head><body>   <div id="left"></div><div id="right"></div><div id="maincontainer"></div><div id="foot"></div></body></html>

需要加上

层来清除浮动~~

<div id="maincontainer"><div id="left"></div><div id="right"></div><div class="clear"></div></div><div id="foot"></div>



.clear{clear:both;background: none;border: 0;display: block;float: none;font-size:0;margin:0;padding:0;overflow: hidden;visibility: hidden;width:0px;height:0px;line-height:0px;}#left        {            background: #eee;            width: 350px;            height: 400px;            float: left;        }        #right        {            background: #ccc;            width: 150px;            height: 400px;            float: right;        }        #maincontainer        {            width: 500px;            overflow: auto;                     }        #foot        {            background: #eee;            width: 500px;            height: 100px;        }

需要加上

层来清除浮动~~

<div id="maincontainer"><div id="left"></div><div id="right"></div><div class="clear"></div></div><div id="foot"></div>



.clear{clear:both;background: none;border: 0;display: block;float: none;font-size:0;margin:0;padding:0;overflow: hidden;visibility: hidden;width:0px;height:0px;line-height:0px;} #left        {            background: #eee;            width: 350px;            height: 400px;            float: left;        }        #right        {            background: #ccc;            width: 150px;            height: 400px;            float: right;        }        #maincontainer        {            width: 500px;            overflow: auto;                      }        #foot        {            background: #eee;            width: 500px;            height: 100px;        }

大家误会了  我可能强调的也不对,这个是在VS2008的设计页面中的情况。浏览器运行是正常的。。。。

应该是上下div边距的问题

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn