Корзина
Светлая тема
Войти
DEVNEW.ORG » Блог » Уроки по HTML » Урок 7. Основы CSS, уроки CSS
Урок 7. Основы CSS, уроки CSS
admin
24-10-2023, 20:08 215 0

Урок 7. Основы CSS, уроки CSS

Многим читающим эту статью уже известно, что CSS расшифровывается как каскадная таблица стилей. Надеюсь, вы хотя бы примерно предполагаете как она работает. Подключать файл стилей мы уже умеем, теперь разберемся с его начинкой. Стили отвечают за внешний вид нашей html-страницы, за ее оформление и привлекательность. Красивый и грамотный дизайн — один из основных факторов успеха и популярности вашего ресурса, помимо контента. 

CSS-файл состоит из простейших конструкций. Основу его составляют селекторы и свойства этих селекторов. Селектор — это элемент над которым мы хотим произвести внешние изменения, а свойства — как раз те самые изменения элемента, его цвет, размеры, расположение и т.д. Если представить, что html-страница это холст, то каждый элемент картины является селектором, а вот свойства как раз краски для придания жизни.

CSS правила

Теперь понятно, что весь файл стилей с расширением .css состоит из набора так называемых правил. Правило — это совокупность селектора и свойств. Пример двух правил для заголовка h1 и всех блоков div на странице представлен ниже, именно из таких конструкций состоит весь файл CSS:

h1 {
    font-size: 22px;
color: #000; } div { width: 100px;
height: 50px; }

В данном примере мы обращаемся к самым простым селекторам, селекторам с названием тега. Такие правила применяются ко всем тегам на странице, нет никакой избирательности или фильтрации. Можно назвать такое css-правило общим.

Чтобы задать css-свойства для определенной группы элементов, необходимо присвоить каждому элементу группы класс. Класс устанавливается с помощью атрибута class. Например, можно объединить блоки товаров, постов, элементов меню. Все они будут иметь сходные стили, если в качестве селектора использовали название класс. Ниже конструкция каталога, для элементов каталога задаем одинаковые стили.

<div class="catalog">
    <div class="catalog-item">...</div>
<div class="catalog-item">...</div>
...
</div>

Стили для элементов каталога по установленному классу:

.catalog-item {
width: 250px;
font-size: 14px;
background: #eee;
}

Основные группы CSS-свойств

Все css-свойства условно можно разбить на несколько групп, официально никакой градации не предусмотрено, но для новичков удобнее будет ориентироваться. 

  • Внешний вид текста

    К этой группе css-свойств можно отнести font-size (размер шрифта), text-decoration (при значении underline имеем подчеркнутый текст), font-weight (жирность шрифта, bold - жирный), font-style (стиль текста), color (цвет текста) и т.д.

  • Размеры и отступы

    В верстке существуют два основных, самых важных понятия типа отображения элемента. Элемент может быть блочный и строчный, другие способы отображения не так важны. Блочные элементы могут иметь размеры (высоту height и ширину width), отступы внешние (margin) и внутренние (padding). Свойства css для задания размеров и отступов элементов подробно описаны в так называемой Блочной модели.

  • Сетки

    Все видели как выглядит типичный сайт? Сначала идет header, затем основной блок с контентом и сайдбаром, заканчивается страница обычно футером. Такое расположение элементов относительно друг друга называется построением html-сеток. Подробнее о сетках поговорим в следующих уроках верстки. Пример простейшей сетки ниже с помощью float (выравнивания элементов):

    <div class="header">Голова</div>
    <div class="left-column">Контент</div>
    <div class="right-column">Сайдбар</div>
    <div class="footer">Подвал</div>

    Стили для сетки:

    div {
    margin-bottom: 10px;
    padding: 10px 20px 10px 20px;
    background-color: #dff0d8;
    } .left-column {
    width: 60%;
    min-height: 90px;
    background-color: #fcf8e3;
    float: left;
    } .right-column {
    width: 25%;
    min-height: 90px;
    background-color: #d9edf7;
    float: right;.
    } .footer {
    clear: both;
    }
  • Позиционирование в CSS

    Позиционирование в css используется для создания эффекта многослойности, чтобы элементы могли накладываться друг на друга, всплывать. Для задания одного из режимов позиционирования используют свойство position и набор из управленческих свойств top, left, right, bottom. Они задают соответствующие отступ для элемента. Популярным значение для свойства position является absolute. Оно исключает элемент из потока, накладывает на страницу сверху. Место выдернутого элемента занимают следующие по порядку блоки. Для задания приоритета позиционирования, порядка наложения используют свойство z-index с целочисленными значениями.

  • Дизайн (цвета, тени, градиенты, фон)
  • Прочее

Что значит каскадность стилей CSS

Пришло время разобраться с понятием каскадности стилей. Этот мощный механизм основывается на комбинировании всех CSS-правил, которые относятся к одному и тому же элементу. Например, мы назначаем общие правила для всех абзацей на странице. Затем добавляем к одному из абзацей  класс, для класса тоже задаем свои свойства. Браузер соберет все правила для данного элемента в соответствии с приоритетом и применит их. В этом и заключается каскадность.

Понятие каскадности тесно связано с переопределением стилей. Оно происходит, когда в файле стилей для одного и того же элемента задаем одинаковое свойство с разными значениями. Стиль переопределиться в соответствии с приоритетом. Кратко можно описать приоритеты следующим образом в порядке убывания:

  1. Атрибут style внутри тега, самый высокий приоритет
  2. Правила для селектора c id
  3. Правила для селектора с классом
  4. Правила для селектора с тегом

Профессиональными разработчиками часто используется прием нескольких классов у одного элемента. Таким образом не обязательно прописывать свойства для каждого из них, достаточно добавить к нужным блокам класс и прописать свойства для этого класса.

Наследование стилей css

Еще одно важное понятие CSS — это наследование. Все стили определенные для родительского элемента будут приняты и дочерними. Если прописать размер и стиль шрифта, цвет у элемента ul для меню, то все дочерние li примут эти значения. Есть свойства, которые не наследуются. К ним относятся свойства из категории размеры и отступы, позиционирование.




Cмотрите также

Программы для Linux 17-04-2023, 19:11
[xfnotgiven_posterlogo]

QEMU Linux

[/xfnotgiven_posterlogo] [xfgiven_posterlogo][/xfgiven_posterlogo]

QEMU — виртуальная машина (эмулятор). Программа для запуска гостевых операционных систем внутри хост-системы. Поддерживает аппаратную виртуализацию.

Возможности

  • Эмуляция хост-системы (CPU, память, устройства) для запуска-гостевых операционных систем.
  • Поддержка виртуализации KVM, Xen, Hax, Hypervisor.Framework для исполнения гостевых-систем непосредственно на CPU.
  • Эмуляция в режиме «User mode» для запуска приложений, скомпилированнных под один CPU, на другом CPU. В данном режиме всегда выполняется эмуляция CPU.

    Поддерживаемые хост-архитектуры

    Arm kvm (64 bit only), tcg, xen
    MIPS kvm, tcg
    PPC kvm, tcg
    RISC-V kvm, tcg
    s390x kvm, tcg
    SPARC tcg
    x86 hax, hvf (только 64-bit), kvm, nvmm, tcg, whpx (только 64-bit), xen


    Установка в Ubuntu (LinuxMint)

    sudo apt install qemu

    Установка в Fedora

    sudo dnf install qemu

    Установка в openSuse

    sudo zypper install qemu

    Установка в Gentoo

    sudo emerge -a acct-user/qemu
Игры для Linux 17-04-2023, 19:37
[xfnotgiven_posterlogo]

KGoldrunner Linux

[/xfnotgiven_posterlogo] [xfgiven_posterlogo][/xfgiven_posterlogo]

KGoldrunner — аркада, в которой герой бегает по лабиринту, поднимается по лестницам, выкапывает ямы и уклоняется от врагов.

Возможности

  • Необходимо собрать все золотые самородки и пройти на следующий уровень. Враги также охотятся за золотом и за героем.
  • Простая 2D графика.
  • В игре представлено сотни различных уровней. От простых до очень сложных.
  • Два режима игры: классический и KGoldrunner-mode, в котором враги более умные.
  • Управление выполняется с помощью клавиатуры и мыши.
  • Сохранение и загрузка игры.
  • Поддерживается изменение темы оформления.
  • Воспроизведение решения, подсказки, демонстрация прохождения.
  • Доступен редактор уровней.

    Установка через Flatpak

    Установка:

    flatpak install flathub org.kde.kgoldrunner

    Запуск:

    flatpak run org.kde.kgoldrunner

    Установка через Snap

    sudo snap install kgoldrunner

    Установка в Ubuntu (LinuxMint)

    sudo apt install kgoldrunner

    Установка в ArchLinux (Manjaro)

    sudo pacman -S kgoldrunner

    Установка в Fedora

    sudo dnf install kgoldrunner

    Установка в openSuse

    sudo zypper install kgoldrunner

    Установка в Gentoo

    sudo emerge -a kde-apps/kgoldrunner
Программы для Linux 17-04-2023, 19:10
[xfnotgiven_posterlogo]

PikoPixel Linux

[/xfnotgiven_posterlogo] [xfgiven_posterlogo][/xfgiven_posterlogo]

PikoPixel — программа для рисования пиксельных изображений.

PikoPixel не перегружена лишними функциями и обладает базовым функционалом для рисования пиксельных изображений. Содержит минимальный набор инструментов рисования.

Основные возможности

  • Инструменты рисования: карандаш, линия, прямоугольник, окружность, заливка, ластик, пипетка.
  • Инструменты выделения: прямоугольное выделение, выделение произвольной области, выделение замкнутой области.
  • Поддержка слоев.
  • Поддержка прозрачности слоев.
  • Редактирование сетки.
  • Настраиваемый фон холста.
  • Поддержка горячих клавиш.
  • Неограниченное количество отмены действий.
  • Экспорт увеличенных изображений.
  • Диалог выбора цвета с несколькими палитрами.
  • Интерфейс с плавающими панелями.

    Установка в ArchLinux из AUR

    git clone https://aur.archlinux.org/pikopixel.git
    cd pikopixel
    makepkg -sri

    Установка в Gentoo

    sudo emerge -a gnustep-apps/pikopixel
Игры для Linux 17-04-2023, 19:15
[xfnotgiven_posterlogo]

Scid Linux

[/xfnotgiven_posterlogo] [xfgiven_posterlogo][/xfgiven_posterlogo]

SCID (Shane’s Chess Information Database) — оболочка для просмотра и управления шахматными базами данных.

Игра кросс платформенная
Работает в:

  • Linux
  • MacOS
  • Windows

Установка в Ubuntu (LinuxMint)

sudo apt install scid

Установка в openSuse

sudo zypper install scid

Установка в Gentoo

sudo emerge -a games-board/scid
Игры для Linux 17-04-2023, 19:35
[xfnotgiven_posterlogo]

Space Cadet Pinball Linux

[/xfnotgiven_posterlogo] [xfgiven_posterlogo][/xfgiven_posterlogo]

Space Cadet Pinball — игра пинбол для Linux. Создана с помощью реверс-инжиниринга на базе windows-игры Space Cadet.

Установка через Flatpak

Установка:

flatpak install flathub com.github.k4zmu2a.spacecadetpinball

Запуск:

flatpak run com.github.k4zmu2a.spacecadetpinball

Отзывы (0)

Кликните на изображение чтобы обновить код, если он неразборчив