为div重置继承的margin-left

时间:2014-01-03 19:53:45

标签: css

我有一个css类,它被添加到母版页中。

.mainContent .grid-container {
    margin-left:auto;
    margin-right:auto;
    padding:0 40px;
    *zoom:1
}

然后由所有其他内容页面继承。现在我希望在页面的一个div中,这不是继承的,margin-left设置为零。我试过覆盖这个课程。

但我遇到的问题是margin-leftauto,而覆盖我可以将我的margin-left设置为某个值。这将有效,但我知道,在覆盖特定div的同时,我应该设置为margin-left

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

您可以使用负边距 - 如果您使用灵活宽度(百分比)或像素值,则取决于您的布局。如果您使用百分比值,则需要进行一些数学计算。

在我的示例(http://jsfiddle.net/teddyrised/fGmaQ/)中,父容器为自动左右边距,宽度为75%。因此,要将其位置重置为左侧,您需要使用-16.6667%的左边距,即margin-left: -16.66667%;。此外,如果您希望元素填满整个宽度,您还需要重新声明宽度。

否则,您可能不得不依赖JS来动态计算需要左边距。

答案 1 :(得分:0)

使用smth:

margin-left: -100px;

如果您现在在其他地方使用精确值,则必须以不同的方式组织样式,以获得全宽容器和固定宽度容器。