5

使用下面的标记和 css,我试图获得 shell 的计算左边距。

 <section class="page-title">
      <div class="shell">
        <h5 class="title">Welcome!</h5>
      </div>
    </section>

.shell {
  zoom: 1;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 16px;
  padding-right: 16px;
}

使用

parseInt($('.shell').css('marginLeft'))

它适用于 Chrome、Safari、IE9,但令人惊讶的是不适用于 Firefox。尝试了另一种方法:

($('.shell').outerWidth(true) - $('.shell').outerWidth()) / 2

也很好用,但 Firefox。所以我猜firefox不支持用jQuery获取未定义的css?一个直接的解决方法是:

($('.page-title').width() - $('.shell').outerWidth()) / 2 

但我想知道是否有更好的方法。

4

1 回答 1

2

当您说它不起作用时,您是收到错误(在控制台中)还是返回 0?显然,为自动设置返回 0 是不同浏览器的问题。

您可以使用以像素为单位返回所有指标的轻量级jSizes库。这将使您不必费心使用outerWidth等。

于 2013-06-03T23:30:07.090 回答