如何在html中设置与百分比%相等的宽度

时间:2013-07-01 17:45:06

标签: html css css-float

注意: 在我发布我的问题之前,我已经搜索了这个网站以获得答案,但是我找不到任何允许我设置百分比值等边距的解决方案。

以下代码未按比例缩放至完整的25%:

请参阅以下示例HTML代码:

<style>

#Wrapper {
    margin:0 auto;
    width:70%;
}

#MainLogo{
    width:100%;
    height:100px;
    border:1px solid #000;
}

#LeftSide{
    width:25%;
    height: 600px;
    background-color:#90F;
    margin-top:5px;
    float:left;
}

#FloatLeft {
    float:left;
}

#One{
    width:25%;
    height:300px;
    background-color:#000;
    margin-top:5px;
    float:left;
}

#Two{
    width:25%;
    height:300px;
    background-color:#F00;
    margin-top:5px;
    float:left;

}

#Three{
    width:25%;
    height:295px;
    background-color:#F00;
    margin-top:5px;
    float:left;
    clear:both;
    }

#Four{
    width:25%;
    height:295px;
    background-color:#000;
    margin-top:5px;
    float:left;
}


#RightSide{
    width:25%;
    height: 600px;
    background-color:#00F;
    margin-top:5px;
    float:right;
    margin-bottom:5px;
}

#MainFooter{
width:100%;
    height:100px;
    border:1px solid #000;
    clear:both;
}

</style>


<body>

<div id="Wrapper">

<header id="MainLogo">
Logo Goes here!!
</header>

<aside id="LeftSide">
Left side goes here
</aside>

<div id="FloatLeft">

<aside id="One">
One Goes Here!!
</aside>

<aside id="Two">
Two aside goes here!!
</aside>

<aside id="Three">
Three aside goes here!!
</aside>

<aside id="Four">
Four aside goes here!!
</aside>
</div> 

<aside id="RightSide">
Right side goes here
</aside>

<footer id="MainFooter">
Main Footer Goes here!!
</footer>
</div>

1 个答案:

答案 0 :(得分:0)

它不起作用的原因是因为paddingmargin之类的事情。您将需要使用box-sizing属性来获得所需的效果。

首先,您应删除所有内容的填充和边距,然后将box-sizing属性设置为border-box。这将确保无论您拥有多少paddingmargin,它都会始终保持在您指定的heightwidth

以下是示例用法

* {
  padding:0;
  margin:0;
  box-sizing-border-box;
}

尚未完全支持box-sizing属性,因此您需要使用供应商特定属性