как переопределить left: 0 с помощью CSS или JQuery?


104

У меня есть элемент со следующим CSS:

.elem {
  left: 0;
  position: fixed;
  right: 0;
  width: 60%;
  z-index: 1000;
  }

Элемент не занимает весь экран. Я бы хотел, чтобы он «выровнялся» по правой стороне экрана.

Это было бы легко, если бы я просто удалил left: 0 , но я не могу вмешиваться в приведенный выше CSS, поэтому мне нужен CSS или JQuery, чтобы переопределить, отключить или удалить left: 0 CSS.

Спасибо за помощь!

Ответы:


238

Значение по умолчанию для leftis auto, так что просто установите его, и вы "сбросите" его.

.elem {
  left: auto;
}

Убедитесь, что указанное выше идет после исходного файла CSS.


1
СПАСИБО! Я пытался '', но меня это больше не дало. Хорошо знать.
часто бывает

@frequent. Вы могли бы использовать такие значения, как "", если бы вы использовали Javascript, да, но не в CSS. В любом случае, но разве вы не говорили, что не можете вмешиваться в таблицу стилей? В этом случае style="left:auto"атрибут в самом элементе сделает свое дело, переопределив таблицу стилей.
Мистер Листер


4

Попробуйте autoсвойство в CSS, которое равно значению по умолчанию.


2

С помощью jquery:

$(".elem").css("left", "");

это не сбрасывает его до указанного значения (в данном случае «0»)?
Дион

1
@Antonio: на самом деле это будет установка недопустимого атрибута "left" html, например, <div left="0">вместо изменения css. Пока комментарий Яна все еще в силе (т.е. нет необходимости в JS), это можно сделать с помощью $(".elem").css("left", "");чего-то еще.
ov

Опс, верно ... отредактируйте и поставьте это возможное решение. Спасибо.
Антонио Бимуд

0

Независимо от того, является ли извлеченный вами стиль внешним или внутренним, вы можете заменить его внутренним, например:

.elem {
    position: fixed;
    right: 0;
    width: 60%;
    z-index: 1000;
  }
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.