Ответьте на 3 вопроса
и узнайте стоимость
вашего сайта
МЕНЮ
ДРУГИЕ УСЛУГИ

История платежей для интернет-магазинов Tilda
Автоскейл для стандартных блоков
Карта сайта
ОСНОВНОЕ

Главная
Сайты на тильде
Портфолио
Цены
Калькулятор стоимости
Бриф на сайт
Обо мне
Отзывы
Ответы на вопросы
Контакты
САЙТЫ НА ТИЛЬДЕ

Лендинг
Квиз-лендинг
Квиз
Многостраничник
Сайт-визитка
Интернет-магазин
Корпоративный сайт
Сайт-услуг
Сайт-каталог
Лонгрид
Промо-сайт
Личный сайт
БЛОГ

C чего начать разработку сайта?
Ответы на вопросы по разработке сайта
Примеры сайтов в нише недвижимость
Как работать с самозанятыми
Как сделать прототип сайта
Пример прототипа сайта
Как подготовить тексы для сайта
Все о процессе работы
От чего зависит стоимость сайта
Стили в веб-дизайне
Мобильная версия на Тильде
Лучшие сайты на Тильде
CSS: Великий и ужасный
Как мы уже знаем CSS это код, который преобразует обычную разметку в красивый вид.

Наши настройки блоков/элементов в ZERO и в стандартных блоках - тоже преобразуются по итогу в CSS. CSS код нельзя писать просто так в блоке T123, нужно использовать специальный тег и думаю вы с ним уже знакомы.

Это тег <style>

Совет:
Напишите тег <style> в T123 и сразу нажмите Enter, закрывающий тег появится автоматически. А у ваш курсор сразу будет в месте откуда вы сможете начать писать CSS код.
Давайте расскажу, что можно делать с помощью CSS:
  • Менять цвет элемента
  • Добавлять картинку/иконку в элемент
  • Менять позиции картинки/иконки
  • Двигать элемент в любую сторону
  • Скейлить элемент в любую сторону
  • Изменять ширину/высоту элемента
  • Добавлять любые стейты: ховер/актив/маркер/фокус/ и др.
  • Добавлять псевдоэлементы, они добавляют к основному элементу дополнительные
  • Добавлять отступы внешние/внутренние
  • Добавлять обводку внешнюю/внутреннюю
  • Добавлять тень внешнюю/внутреннюю
  • Изменять видимость элементов
  • Изменять позиции в слоях
  • Менять шрифты, настройки текста
  • Добавлять адаптивность к блокам и элементам, отображать на разных экранах - элементы по разному

И много всего остального не менее классного. Всем этим мы можем управлять сами с помощью скриптов, в том числе автоматически создавая разные сценарии.
Как теперь с этим работать?

Самое главное уметь работать с инспектором и находить наши элементы через инспектор. Если вы внимательно изучили предыдущие темы, а также следовали советам, значит вы готовы начать изучать селекторы.

Селекторы - это выражения, которые говорят браузеру, к какому элементу HTML нужно применить те или иные свойства CSS
Мы уже знаем что такое теги, классы, id и атрибуты. Как раз из них и формируются селекторы.

Стандартная CSS Структура:

(тег, класс, ID, атрибут) { - Выделенное и есть селектор
(CSS правила)
}

Давайте подставим примерные значения:
.tn-atom {
background-color: red;
}

В данном случае .tn-atom является селектором.

Вставьте этот код в T123 и посмотрите что получится с дефолтным ZERO блоком. Вы наглядно увидите как во все объекты, которые имеют класс tn-atom добавится красный фон.

Как я писал на странице об HTML тегах, класс tn-atom в тильде ставится на все элементы внутри ZERO блока и является дочерним для всех элементов.
Именно поэтому окрасились все элементы, теперь я думаю будет понятнее для чего нужны уникальные классы, о которых также писал, они помогут нам достучаться до конкретных элементов.

Как вы уже поняли, селектором является выражение, которое состоит из класса, id или атрибута. Они вставляются до скобок { ... }, но при этом надо правильно их вставить.

К примеру, чтобы задать CSS код для элемента, и мы хотим вызвать его через класс:
.tn-atom {

}
Для класса используется точка вначале

Если хотим задать CSS код для элемента, но уже вызвать элемент через id блока:
#rec792264209 {

}
Для ID используется решетка вначале

Если хотим задать CSS код для элемента, но уже вызвать элемент через атрибут:
[data-elem-id="1725450981268"] {

}
Для атрибута используются квадратные скобки с указанием атрибута и его значения

При этом это может быть один и тот же элемент, просто у него имеется класс tn-atom, id rec792264209, а атрибут data-elem-id="1725450981268"

Таким образом вы сможете стучаться до объекта. И я рекомендую вам научиться использовать все три способа, потому-что тильда
  1. Не всегда дает уникальный класс
  2. Мало где дает ID элементам, кроме целых блоков
  3. Но почти везде есть атрибуты с уникальным значением
Но это еще цветочки! Вы можете вписывать по 2,3,4, классов, id и атрибутов в 1 селектор!
Как это выглядит?

Представьте такой код:
.tn-elem__7922642091725450981268 .tn-atom {

}

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

Получается у нас 2 класса в одном селекторе. И стоит понимать, что так можно сделать только если класс первого элемента является родителем, а остальные классы дочками.

Структура такая:
<div class="one"> - Родительский элемент

- <div class="two"> - Дочерний элемент

-- <div class="three"></div> - Дочерний элемент происходящий от класса "two"

- </div> Закрывающий тег дочернего элемента от класса "one"

</div> - Закрывающий тег родительского элемента

Представим, что наша задача обратится к элементу с классом "three", но при этом усложним, и нам нельзя будет напрямую к нему обращаться, а только через наследование.

Как мы это сделаем?
.one .two .three {

}

Как видите, мы прямо последовательно обратились сначала к первому элементу с классом "one", далее ко второму элементу с классом "two", и в конце к третьему с классом "three"

К сожалению, в CSS на данный момент нельзя обращаться от дочки к родителю, например:
.three .one {

}

Играет строгая модель наследования, когда от старшего переходит к младшему.

Давайте теперь напишем селектор для нашего квадрата, но обратимся через ID блока.
Что было в видео
  1. Мы "стучались" к нашему элементу квадрата через наследование. При этом из далека. Выделили ID блока в котором наш элемент, выделили его уникальный класс, и взяли наш конкретный tn-atom
  2. Добавили в стили поворот объекта для примера
  3. Создали второй квадрат, и постучались к нему аналогичным образом, при этом повернув его чуть иначе
Помимо этого наглядно показано что будет, если мы не будем указывать уникальный класс элемента в ZERO, т.е когда повернулись одинаково оба квадрата

Более того, вы можете обращаться не только через классы, а даже через теги, но здесь есть загвоздка. Если вы обратитесь к тегу div, то у вас применятся стили к абсолютно всем элементам на сайте

Пример кода:
div {
CSS код
}

Ниже я написал несколько вариантов селекторов, чтобы вы понимали как их легко можно создавать.

#rec792264209 .tn-elem[data-elem-id="1725450981268"] div {
}
  • В данном селекторе я вначале поставил ID блока, чтобы искало только в нем
  • Далее взял обычный не уникальный класс tn-elem и соединил его с атрибутом, который имеет уникальное значение у элемента
  • И после этого вставил тег div, тем самым давая коду работать для всех дочек объекта .tn-elem
Что это нам дает? Это дает нам информацию о том, что помимо уникальных классов, тильда добавляет атрибуты с уникальным значением, а это значит, что с помощью атрибутов мы также сможем достучаться до нужного объекта, не используя уникальный класс

А завернутый в конце div будет работать уже внутри элемента с классом tn-elem, а не на всем сайте, потому что мы ограничили ему доступ с помощью ID вначале и классом tn-elem с уникальным значением атрибута.

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

На самом деле как я и говорил вначале документации, самое главное - это понять как работает структура, как правильно писать, и находить элементы, как тильда строит сайт

А все остальное - это инструменты, которые облегчают нам работу.

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

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

Страница с хаками селекторов

А перед тем как проходить дальше, совет:
Попробуйте создать разных элементов в ZERO и дать им примитивные стили:
background-color: red; или transform: rotate(90deg);

Используйте видео выше для лучшего понимания

Попробуйте использовать разные селекторы, используйте разные атрибуты, изучайте скелет блоков в инспекторе
Made on
Tilda