当position:absolute时如何移除Left属性?

当select特定语言时,我将CSS网站重写为RTL版本。

我有一个必须有绝对定位的元素。 在LTR版本中,我left: 0px; 和左边alignment; 在RTL版本中,我想做相反的right ,但left属性不会被覆盖,所以它仍然停留在左侧。

  • 我已经尝试用!important ,但没有工作。
  • 我试过设置left: none ,但没有奏效。

我怎样才能将它设置为none或在覆盖的时候将其完全移除?

 left:auto; 

这会默认left回到浏览器默认。


所以如果你有你的标记/ CSS为:

 <div class="myClass"></div> .myClass { position:absolute; left:0; } 

设置RTL时,可以更改为:

 <div class="myClass rtl"></div> .myClass { position:absolute; left:0; } .myClass.rtl { left:auto; right:0; } 

将来会使用left: unset; 用于取消左侧的值。

截至今天2014年11月4日, unset仅在Firefox中受支持。

阅读有关在MDN中未设置的更多信息。

我的猜测是,当IE 11被正确淘汰时,我们将能够在2022年左右使用它。

 left: initial 

这也将left设置回浏览器默认值。

但重要的是要知道property: initial在IE中不支持property: initial