Аккаунт Setka Создание компонентов (HTML, CSS)

Создание компонентов (HTML, CSS)

В Setka Editor можно составлять компоненты разных типов. Вы можете превратить пост, параграф, заголовок, сетку, колонку, картинку, эмбед, разделитель, галерею или контейнер в шаблон и затем использовать его во время верстки новых постов.

 

Примечание: о том, как добавить компонент во время редактирования поста в Setka Post Editor, вы можете узнать из этой статьи.

 

Содержание

Пост

Структура HTML

Пример использования

Совместимость

Параграфы и заголовки

Структура HTML

Пример использования

Совместимость

Сетка

Структура HTML

Пример использования

Совместимость

Колонка

Структура HTML

Пример использования

Совместимость

 

Изображение

Структура HTML

Совместимость

Плейсхолдер изображения

Структура HTML

Совместимость

Эмбед

Структура HTML

Совместимость

Разделитель

Структура HTML

Пример использования

Совместимость

Галерея

Структура HTML

Совместимость

Контейнер

Структура HTML

Совместимость

 

CSS в компонентах

Custom CSS

Внутренние классы Setka

Удаление компонентов

Компоненты с custom CSS

Примеры компонентов

Цитата между разделителями

Вложенные контейнеры

Сетка с боковой и основной колонками

 

Компоненты для Setka Editor создаются двумя способами:

  • В качестве компонента может выступать любой валидный HTML-код. В коде также используются стандартные элементы Setka Editor: сетки, колонки, параграфы, галереи и изображения. Они должны содержать соответствующие CSS-классы. Помимо стандартных классов, можно использовать и ваши собственные.
  • Создавая компонент с нуля, соблюдайте правила, описанные ниже, чтобы получить HTML-код, принимаемый редактором.

Компонент может состоять из следующих элементов:

 

Пост

Главный контейнер любой публикации, созданной в Setka Editor.

 

Структура HTML

<div class="stk-post">
<!-- содержимое поста -->
</div>

 

Пример использования

<div class="stk-post">
<p>Первый абзац</p>
<p>Второй абзац</p>
</div>

 

Совместимость

Пост может содержать

Пост не может содержать

— Параграфы и заголовки

— Теги оформления: <strong>, <i>, <em>, <a>, <u>, <del>, <sup>/<sub>, <span>, <br>
— Изображения, тег <img>

— Галереи

— Разделители

— Сетки

— Контейнеры

— Колонки


Обратите внимание: пост не может содержать колонки в чистом виде. Каждая колонка обязательно должна быть обёрнута в сетку.

 

Параграфы и заголовки

Параграф — минимальная единица контента в Setka Editor. Любой текст должен располагаться внутри параграфа. Наряду с параграфами существуют и заголовки (теги <h1> — <h6>).

 

Структура HTML

<p><!-- текст параграфа --></p>

<h2 class="stk-theme_XXXX__style_large_header">
<!-- текст заголовка H2 -->
</h2>

<h4 class="stk-theme_XXXX__style_small_header">
<!-- текст заголовка H4 -->
</h4>
Замените stk-theme_XXXX__style_large_header и stk-theme_XXXX__style_small_header на классы заголовков из вашего стиля.

 

Пример использования

<p>Просто текст</p>

<p>Текст со <a href="https://setka.io">ссылкой</a> на сайт</p>

<p>Текст с <strong>полужирным</strong> выделением<br>
и переносом строки</p>

<p><img src="icon.png" alt="иконка"> текст</p>

<h2 class="stk-theme_3883__style_large_header">Большой заголовок раздела</h2>

 

Совместимость

Параграф может находиться внутри

Параграф может содержать

— Поста

— Колонки

— Контейнера

— Текст

— Теги оформления: <strong>, <i>, <em>, <a>, <u>, <del>, <sup>/<sub>, <span>, <br>

— Изображения, тег <img>

 

Параграф не может находиться внутри

Параграф не может содержать

— Сетки

— Галереи

— Разделители

— Эмбеды

— Сетки

— Колонки

 

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

 

Сетка

Сетки используются для многоколоночной верстки контента. Каждая сетка состоит из контейнера (stk-grid) и самих колонок (stk-grid-col). Контент располагается внутри колонок.

 

Структура HTML

<div class="stk-grid" data-ce-tag="grid">
<!-- колонка 1 -->
<!-- колонка 2 -->
<!-- колонка N -->
</div>

 

Пример использования

<div class="stk-grid" data-ce-tag="grid">
<div class="stk-grid-col" data-ce-tag="grid-col" data-col-width="3">
<p>Текст в левой колонке</p>
</div>
<div class="stk-grid-col" data-ce-tag="grid-col" data-col-width="3">
<p>Текст в правой колонке</p>
</div>
</div>

 

Совместимость

Сетка может находиться внутри Сетка может содержать
— Поста
— Колонки
— Контейнера
— Колонку

Сетка не может находиться внутри

Сетка не может содержать

— Параграфа

Ничего кроме колонок. Весь контент сетки размещается в колонках.

 

Колонка

Любая сетка делится на колонки. Если речь идёт об одной колонке, она всё равно должна находиться внутри сетки.

 

Структура HTML

<div class="stk-grid-col" data-ce-tag="grid-col" data-col-width=”{N}”>
<!-- содержимое колонки -->
</div>

 

Для колонки необходимо задать атрибут data-col-width, определяющий ее ширину. Это может быть целое число от 1 до максимального количества колонок в данной модульной сетке. Например, в 6-колоночной сетке атрибут data-col-width может принимать значения от 1 до 6.

 

Пример использования

<div class="stk-grid" data-ce-tag="grid">
<div class="stk-grid-col" data-ce-tag="grid-col" data-col-width="1">
<p>Узкая левая колонка</p>
</div>
<div class="stk-grid-col" data-ce-tag="grid-col" data-col-width="1">
<p>Центральная колонка с контентом</p>
</div>
<div class="stk-grid-col" data-ce-tag="grid-col" data-col-width="1">
<p>Узкая правая колонка</p>
</div>
</div>

 

Совместимость

Колонка должна находиться внутри

Колонка может содержать

— Сетки

— Параграф

— Сетку

— Картинку

— Эмбед

— Разделитель

— Галерею

— Контейнер

 

Изображение

Код изображения состоит из:
  • Контейнера картинки — image-figure.

  • Маски — mask.

  • Самого изображения — <img>.

  • Подписи к изображению — <figcaption>.

 

Обратите внимание: все элементы кроме подписи — обязательны.

 

Структура HTML

<figure class="stk-image-figure" data-ce-tag="image-figure">
<div class="stk-mask" data-ce-tag="mask">
<img src="path/to/image.jpg" alt="">
</div>
<figcaption class="stk-description" data-ce-tag="description">
<!-- Подпись к картинке -->
</figcaption>
</figure>

 

Изображение может содержать ссылку:

<figure class="stk-image-figure" data-ce-tag="image-figure">
<div class="stk-mask" data-ce-tag="mask">
<a class="stk-link" href="https://setka.io">
<img src="path/to/image.jpg" alt="">
</a>
</div>
<figcaption class="stk-description" data-ce-tag="description">
<!-- Подпись к изображению -->
</figcaption>
</figure>

 

Совместимость

Изображение может находиться внутри

Изображение может содержать

— Поста

— Колонки

— Галереи

— Контейнера

Изображения не может содержать в себе дополнительные компоненты.

 

Плейсхолдер изображения

Плейсхолдер изображения — место для вставки изображения в пост. Представляет из себя заглушку, при клике на которую, открывается меню выбора изображений на правой панели инструментов.

Код плейсхолдера состоит из:

  • Контейнера картинки — image-figure.
  • Маски — mask.
  • Подписи к изображению — <figcaption>.

 

Обратите внимание: все элементы кроме подписи — обязательны. Внутри плейсхолдера не должно быть самого изображения с тегом <img>.

 

Структура HTML

<figure class="stk-image-figure" data-ce-tag="image-figure">
<div class="stk-mask" data-ce-tag="mask">
</div>
<figcaption class="stk-description" data-ce-tag="description">
<!-- Подпись к картинке -->
</figcaption>
</figure>

 

Совместимость

Прейсхолдер изображения может находиться внутри

Плейсхолдер изображения может содержать

— Поста

— Колонки

— Галереи

— Контейнера

Плейсхолдер не может содержать в себе дополнительные компоненты.

 

Эмбед

Эмбеды по структуре похожи на картинки и могут содержать произвольный HTML-код внутри тега <code>. В том числе — теги <style> и <script>.

 

Структура HTML

<figure class="stk-embed-figure" data-ce-tag="embed-figure">
<code class="stk-code">
<!-- Произвольный HTML-код -->
</code>
<figcaption class="stk-description" data-ce-tag="description">
<!-- Подпись к эмбеду -->
</figcaption>
</figure>

 

Совместимость

Эмбед может находиться внутри

Эмбед может содержать внутри

— Поста

— Колонки

— Контейнера

Произвольный HTML-код.

 

Разделитель

 

Структура HTML

<hr class="stk-theme_3883__separator_basic_divider">

 

Пример использования

<hr class="stk-theme_3883__separator_basic_divider">

 

Совместимость

Разделитель может находиться внутри

Разделитель может содержать

— Поста

— Колонки

— Контейнера

Разделитель — самостоятельный элемент. Он не может содержать другие элементы внутри себя.

 

Галерея

Галерея — это контейнер для картинок. На странице поста и в режиме превью она превращается в работающее слайдшоу при помощи JS-скрипта галереи. Внутри галереи находятся изображения.

 

Структура HTML

<div class="stk-gallery" data-ce-tag="gallery">

<figure class="stk-reset stk-image-figure" data-ce-tag="image-figure">
<!-- Image 1 -->
</figure>

<figure class="stk-reset stk-image-figure" data-ce-tag="image-figure">
<!-- Image 2 -->
</figure>

<figure class="stk-reset stk-image-figure" data-ce-tag="image-figure">
<!-- Image 3 -->
</figure>

</div>

 

Совместимость

Галерея может находиться внутри

Галерея может содержать

— Поста

— Колонки

— Контейнера

— Изображение

 

Контейнер

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

 

Структура HTML

<div class="stk-container" data-ce-tag="container">
<!-- Cодержимое контейнера -->
</div>

 

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

<a class="stk-container stk-container-link" data-ce-tag="container" href="https://setka.io">
<!-- Cодержимое контейнера -->
</a>

 

Совместимость

Контейнер может находиться внутри Контейнер может содержать

— Поста

— Колонки

— Контейнера

— Параграф

— Сетку

— Картинку

— Эмбед

— Разделитель

— Галерею

— Контейнер

CSS в компонентах

Каждый компонент использует либо собственные CSS-классы, либо внутренние классы, определяемые стилем Setka.

 

Custom CSS

Компонент может содержать собственные уникальные классы. Чтобы добавить CSS, активируйте пункт Custom CSS for component на странице компонента. В нижней части экрана откроется поле ввода для CSS-кода:

Screenshot-Setka-Editor-Style-Components-Edit-Custom-CSS.png

 

Внутренние классы Setka

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

Использование внутренних классов позволяет добавить в компонент текст определённого формата, разделитель или кнопку. Например, если нужно использовать определённый заголовок, задайте его класс в коде компонента:

<h2 class="stk-theme_3883__style_large_header">

 

Удаление компонентов

Компонент в посте представлен фрагментом статического HTML-кода. В большинстве случаев, удаление компонентов никак не влияет на уже опубликованные посты.

 

Компоненты с custom CSS

Удаляйте компоненты, имеющие custom CSS, с осторожностью. Убедитесь в том, что другие компоненты и элементы стиля не опираются на классы и правила, описанные в Custom CSS удаляемого компонента.

Если нужно удалить компонент с custom CSS, скопируйте содержимое поля Custom CSS for component и перенесите его в custom CSS вашего стиля.

Примеры компонентов

Цитата между разделителями

<hr class="stk-theme_3883__separator_basic_divider">
<p class="my-large-quote">
Текст цитаты
</p>
<hr class="stk-theme_3883__separator_basic_divider">

 

Вложенные контейнеры

<div class="stk-container my-outer-block" data-ce-tag="container">
<div class="stk-container my-inner-block" data-ce-tag="container">
<p>Текст внутри контейнера</p>
</div>
</div>

 

Сетка с боковой и основной колонками

<div class="stk-grid" data-ce-tag="grid">
<div class="stk-grid-col" data-ce-tag="grid-col" data-col-width="2">
<p class="stk-theme_3883__style_small_text">
Мелкий текст в боковой колонке
</p>
</div>

<div class="stk-grid-col" data-ce-tag="grid-col" data-col-width="4">
<p>
Колонка с основным текстом
</p>
</div>
</div>