CSS - 如何使用固定值动态设置 margin-left

CSS - How to set margin-left dynamically with a fixed value

我想要 div 的边距左边值 = 父级 div 的 50% - 300px。

所以,我所做的是-

<img id="layer2" style="
      display: block;
      margin-left: 50%-300px;
      width: 300px;" >

但它不起作用。

我也试过了-

margin-left: 300px-50%;

它也不起作用。

有人可以帮忙吗?

在此先感谢您的帮助。

您可以使用 margin-left: calc(50% - 300px);。但它在 IE

下运行

在这种情况下,我喜欢混合填充和边距。如果您需要的左侧总 space 是 50% - 300px,那么您可以这样做:

 padding-left: 50%; // Padding can't be negative
 margin-left: -300px;

如果您正在制作边框或其他会使填充不起作用的东西,则只需在当前边框周围添加另一个 div,并使用上述样式。