Селектори
Last updated
Last updated
Селектори потрібні для того, щоб за певною ознакою вибрати один або групу елементів для подальшої стилізації. Селекторів буває багато, треба знати хоча б основні з них.
Селектори тегу описують типи тегів до яких буде застосоване CSS-правило. Окремі теги такими селекторами не стилізують. Їх зазвичай використовують для однакової стилізації всіх тегів одного типу на сторінці. Наприклад, прибрати підкреслення у посилань, або визначити певний колір для тексту усіх абзаців на сторінці
Селектор класу на сьогодні - це основний селектор у веб розробці. Селектор класу задають за допомогою атрибута class.
Назвою селектора класу має бути іменник англійською мовою що описує цей елемент. Обирає назву для класу сам розробник.
В інтернеті є багато настанов як правильно обрати назву для селектора класу:
В HTML елементам з однаковим значенням атрибута class (ім'ям класу) буде застосований один і той само стиль в CSS. Щоб визначити стилі для селектора класу перед його назвою ставлять крапку .
В іменах класу використовують тільки маленькі літери латинки і тире. Наприклад: image, image-wrap. Цифри і нижні підкреслення вважають поганою практикою. Окрім тих випадків коли це визначено методологією іменування класів (наприклад БЕМ) (буде розглянуто пізніше).
В елемента HTML може бути кілька класів. У такому разі їх перераховують в атрибуті class через пробіл.
Цю можливість використовують для комбінування і повторного використання стилів.
Наприклад у нас є три стилізовані абзаци, які відрізняються тільки кольором тексту. В такому разі роблять загальний стиль для абзацу, І додають клас, який модифікує тільки колір.
У стилях описуємо кілька правил: загальних для всіх повідомлень і специфічних для кожного типу.
Елементу на HTML сторінці можна задати атрибут id. Він повинен бути унікальним, тобто не повторюватися більше в жодному елементі на цій сторінці. Правило: На сторінці не може бути двох елементів з однаковим атрибутом id.
Щоб в CSS описати стилі для селектора ідентифікатора перед його іменем ставлять знак решітки #.
Селектор нащадка використовують для стилізації дітей, або нащадків будь-якої глибини вкладеності.
У цьому випадку якщо у файлі CSS вказати стиль тегу, то він застосується до усіх посилань. А якщо вказати батьківський клас, а через пробіл клас (або тег нащадка) то стиль застосується тільки до цих елементів
Селектор дитини дозволяє вибрати для стилізації ТІЛЬКИ безпосередню дитину всередині батьківського елемента. Різницю селектора дитини від селектора нащадка добре описати на прикладі багаторівневого списку. Наприклад треба обвести рамкою тільки <li> розділу, а не його елементів.
Якщо використати селектор нащадка (контекстний), то CSS-правило буде застосовано до всіх тегів <li>, і рамка буде у кожного.
Селектор дитини допомагає вирішити цю проблему, вибравши тільки ті <li>
, які є дітьми (перша вкладеність) списку ul.menu
.
Селектор атрибута дозволяє застосувати стилі до елементів з певним атрибутом або його значенням.
Стилі застосуються до елементів у яких є вказаний атрибут.
Вибере всі посилання з атрибутом target.
Застосує стилі до всіх елементів у яких є атрибут з вказаним значенням.
Вибере всі посилання з атрибутом href і відповідним значенням.
Покликання:
У в закладинці CSS спочатку спробуйте перший варіант, а потім другий.
У в закладинці CSS спочатку спробуйте перший варіант, а потім другий.