Как выбрать маркировку для = “XYZ” в CSS?

HTML:

<label for="email">{t _your_email}:</label>

CSS:

label {
  display: block;
  width: 156px;
  cursor: pointer;
  padding-right: 6px;
  padding-bottom: 1px;
}

Я хочу выбрать маркировку на основе, 'чтобы' атрибут сделал изменения макета.

241
задан Kyle 6 August 2019 в 03:54
поделиться

1 ответ

Селектором будет label [for = email] , поэтому в CSS:

label[for=email]
{
    /* ...definitions here... */
}

... или в JavaScript с использованием DOM:

var element = document.querySelector("label[for=email]");

... или в JavaScript с использованием jQuery:

var element = $("label[for=email]");

Это селектор атрибутов . Обратите внимание, что некоторые браузеры (например, версии IE <8) могут не поддерживать селекторы атрибутов, но более поздние версии поддерживают. К сожалению, для поддержки старых браузеров, таких как IE6 и IE7, вам придется использовать класс (ну или какой-то другой структурный способ).

(Я предполагаю, что шаблон {t _your_email} заполнит поле с помощью id = "email" . Если нет, используйте вместо этого класс.)

Обратите внимание, что если значение выбранного вами атрибута не соответствует правилам для идентификатора CSS (например, если в нем есть пробелы или скобки, или оно начинается с цифры и т. Д.) ), вам нужны кавычки вокруг значения:

label[for="field[]"]
{
    /* ...definitions here... */
}

Они могут быть одинарными или двойными кавычками .

471
ответ дан 23 November 2019 в 03:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: