我正在创建一个网站与DIVs。除了创建DIV之外,一切都正常工作。我像这样创建它们(示例):

newdiv {
    width: 200px;
    height: 60px;
    padding-left: 20px;
    text-align: left;
}

当我添加padding-left属性时,DIV的宽度改变为220px,我希望它保持在200px。

让我们说我创建了另一个DIV命名为anotherdiv完全相同的newdiv,并把它放在newdiv,但newdiv没有填充和anotherdiv有填充-左:20px。我得到同样的东西,newdiv的宽度将是220px。

我该如何解决这个问题?


当前回答

如果你想在不改变div大小的情况下缩进div内的文本,使用CSS text-indent代替padding-left。

宣传画{ indent: 1 em; } .border { 边框样式:固体; } < div class = "边境”> 不缩进 < / div > < br > <div class="border缩进"> 缩进 < / div >

其他回答

在newdiv中添加一个div,宽度:auto, margin-left: 20px

从newdiv中删除填充。

W3 Box模型页面有很好的信息。

当我添加padding-left属性时, DIV的宽度变为220px

是的,这完全符合标准。本来就是这样的。

假设我创建了另一个DIV Anotherdiv和newdiv完全一样, 把它放到newdiv里面,但是是newdiv 没有填充和另一个div有吗 padding-left: 20 px。结果是一样的 Thing, newdiv的宽度为220px;

不,newdiv将保持200px宽。

试试这个

box-sizing: border-box;

如果你想在不改变div大小的情况下缩进div内的文本,使用CSS text-indent代替padding-left。

宣传画{ indent: 1 em; } .border { 边框样式:固体; } < div class = "边境”> 不缩进 < / div > < br > <div class="border缩进"> 缩进 < / div >

只需添加box-sizing: border-box;