| Наступна ревізія | Попередня ревізія |
| subjects:basic:informatika:web:css [21.10.2022 01:48] – створено Адміністратор | subjects:basic:informatika:web:css [28.10.2024 16:56] (поточний) – [Селектори та Псевдо-класи] Адміністратор |
|---|
| CSS (англ. Cascading Style Sheets, укр. Каскадні таблиці стилів) — це спеціальна мова стилю сторінок, що використовується для опису їхнього зовнішнього вигляду. Самі ж сторінки написані мовами розмітки даних. | CSS (англ. Cascading Style Sheets, укр. Каскадні таблиці стилів) — це спеціальна мова стилю сторінок, що використовується для опису їхнього зовнішнього вигляду. Самі ж сторінки написані мовами розмітки даних. |
| |
| CSS є основною технологією всесвітньої павутини, поряд із HTML та JavaScript[1]. | CSS є основною технологією всесвітньої павутини, поряд із HTML та JavaScript. |
| |
| Найчастіше CSS використовують для візуальної презентації сторінок, написаних HTML та XHTML, але формат CSS може застосовуватися до інших видів XML-документів. | Найчастіше CSS використовують для візуальної презентації сторінок, написаних HTML та XHTML, але формат CSS може застосовуватися до інших видів XML-документів. |
| |
| ===== Селектори та Псевдо-класи ===== | ===== Селектори та Псевдо-класи ===== |
| CSS має спеціальні позначення (селектори, від англ. selector) для визначення діапазону застосування правила. | CSS має спеціальні позначення (селектори, від англ. selector) для визначення діапазону застосування правила. |
| **Всі елементи**\\ | |
| використовується селектор * (часто не пишеться, наприклад <text background="primary"> * p </text> та <text background="primary">p</text> — рівнозначні) | |
| **За назвою елементу**\\ | |
| наприклад для всіх p або h2 | |
| **Наслідування**\\ | |
| наприклад для всіх a елементів які містяться в li елементах (посилання всередині списків), селектор матиме вигляд li a | |
| **Властивості class та id**\\ | |
| наприклад .class або #id для елементів class="class" або id="id" | |
| **Суміжні елементи**\\ | |
| наприклад для всіх елементів p, попереднім до яких є елемент h2 (перший абзац після заголовка), селектор буде h2 + p | |
| **Пряме наслідування**\\ | |
| наприклад для всіх span елементів всередині p, але не глибших за перший рівень наслідування span, селектор буде p > span | |
| **За атрибутами**\\ | |
| наприклад для всіх <input type="text"> селектор буде input[type="text"] | |
| |
| Для точнішого визначення стилю можуть використовуватися псевдо-класи (англ. pseudo-classes). Мабуть найвідомішим є псевдо-клас :hover, що застосовується коли користувач вкаже на елемент, зазвичай наведенням курсору. Стиль визначається для a:hover або #elementid:hover. Інші псевдо-класи, наприклад, :first-line (перший рядок тексту), :first-letter (перша літера) :visited (посилання, що вже відкривалось) або :before (визначає стиль перед елементом). Спеціальний псевдо-клас :lang(c) буде застосовано до елементів якщо їхня мова (англ. language) «c». | **Селектори** — це частини CSS, які вказують, до яких елементів застосовуються стилі. Вони можуть вибирати елементи за тегом, класом або ідентифікатором. |
| | |
| | **Псевдо-класи** — це спеціальні селектори, які змінюють стиль елемента залежно від його стану. Наприклад, для наведення курсора або для активного елемента. |
| | Приклад |
| | <code css приклад.css> |
| | /* Вибір кнопки, на яку наведено курсор */ |
| | button:hover { |
| | background-color: yellow; |
| | } |
| | </code> |
| | |
| | **Всі елементи:** використовується селектор ''*'' (часто не пишеться, наприклад ''* p'' та ''p'' — рівнозначні) |
| | |
| | **За назвою елементу:** наприклад для всіх ''p''або ''h2'' |
| | |
| | **Наслідування:** наприклад для всіх ''a''елементів які містяться в ''li''елементах (посилання всередині списків), селектор матиме вигляд ''li a'' |
| | |
| | **Властивості //class// та //id//:** наприклад ''.class'' або ''#id'' для елементів ''class="class"'' або ''id="id"'' |
| | |
| | **Суміжні елементи:** наприклад для всіх елементів ''p'', попереднім до яких є елемент ''h2'' (перший абзац після заголовка), селектор буде ''h2 + p'' |
| | |
| | **Пряме наслідування:** наприклад для всіх ''span'' елементів всередині ''p'', але не глибших за перший рівень наслідування ''span'', селектор буде ''p > span'' |
| | |
| | **За атрибутами:** наприклад для всіх ''<input type="text">'' селектор буде ''input[type="text"]'' |
| | |
| | Для точнішого визначення стилю можуть використовуватися **псевдо-класи** (pseudo-classes). Мабуть найвідомішим є псевдо-клас '':hover'', що застосовується коли користувач вкаже на елемент, зазвичай наведенням курсору. Стиль визначається для ''a:hover'' або ''#elementid:hover''. Інші псевдо-класи, наприклад, '':first-line'' (перший рядок тексту), '':first-letter'' (перша літера) '':visited'' (посилання, що вже відкривалось) або '':before'' (визначає стиль перед елементом). |
| | |
| | Підтримка псевдо-класів залежить від браузеру, наприклад Internet Explorer 6 підтримує псевдо-клас '':hover'' лише для посилань. |
| | |
| | В прикладі ничже кілька селекторів об'єднуються через кому. Правило встановлює шрифт для HTML-заголовків всіх рівнів. |
| | <code css> |
| | h1, h2, h3, h4, h5, h6 { |
| | font-family: "Arial", sans-serif; |
| | } |
| | </code> |
| | |
| | ===== Приєднання до сторінки ===== |
| | Щоб включити таблицю стилів CSS, потрібно зберегти код CSS у файл (це можна зробити будь-яким текстовим редактором), наприклад example.css, і потім включити або імпортувати його в HTML або XHTML-сторінку. |
| | |
| | Включення CSS-файлу до сторінки (XHTML): |
| | <code html><link rel="stylesheet" href="example.css" type="text/css" /></code> |
| | Включення CSS-файлу до сторінки (HTML): |
| | <code html><link rel="stylesheet" href="example.css" type="text/css"></code> |
| | Імпорт CSS-файлів до HTML та XHTML-сторінок: |
| | <code html> |
| | <style type="text/css"> |
| | @import "example.css"; |
| | </style> |
| | </code> |
| | |
| | CSS може бути визначений в ''<head>'' частині сторінки або для елементу сторінки через style. |
| | |
| | Включення CSS-файлу до XML-сторінки: |
| | <code html> <?xml-stylesheet type="text/css" href="example.css"?></code> |
| |
| Підтримка псевдо-класів залежить від браузеру, наприклад Internet Explorer 6 підтримує псевдо-клас :hover лише для посилань. | |
| |
| Селектори можуть поєднуватися й іншим чином для досягнення більшої гнучкості (див. визначення селекторів на сайті W3C [Архівовано 23 квітня 2006 у Wayback Machine.]). В наступному прикладі кілька селекторів об'єднуються через кому[3]. Правило встановлює шрифт для HTML-заголовків всіх рівнів. | |
| ===== Джерела ===== | ===== Джерела ===== |
| * [[wp>CSS]] | * [[wp>CSS]] |