Ich überschreibe das Site-CSS auf eine RTL-Version, wenn eine bestimmte Sprache ausgewählt wird.
Ich habe ein Element, das absolut positioniert sein muss. In der LTR-Version mache ich das left: 0px;
und es ist nach links ausgerichtet; In der RTL-Version möchte ich das Gegenteil tun right
, aber die left
Eigenschaft wird nicht überschrieben, sodass sie weiterhin links bleibt.
- Ich habe versucht, mit zu hacken
!important
, aber das hat nicht funktioniert. - Ich habe versucht einzustellen
left: none
, aber das hat nicht funktioniert.
Wie kann ich es entweder auf "Keine" setzen oder es beim Überschreiben vollständig entfernen?
css
css-position
eric.itzhak
quelle
quelle
left
Verwenden Sie:var cssObject = $('selector').prop('style'); cssObject.removeProperty('left');
Antworten:
Dadurch wird standardmäßig die Standardeinstellung
left
des Browsers verwendet.Wenn Sie also Ihr Markup / CSS haben als:
Wenn Sie RTL einstellen, können Sie Folgendes ändern:
quelle
In Zukunft würde man verwenden,
left: unset;
um den Wert von left zu deaktivieren.Ab heute wird der 4. November 2014
unset
nur noch in Firefox unterstützt.Lesen Sie mehr über unset in MDN.
Ich vermute, wir können es um das Jahr 2022 verwenden, wenn IE 11 ordnungsgemäß ausläuft.
quelle
right
Position fürDies wird auch eingestellt
left
die Standardeinstellung des Browsers wiederhergestellt.Aber wichtig zu wissen,
property: initial
wird im IE nicht unterstützt.quelle