Advertisement
  1. Web Design
  2. CodePen

Совет: Добавляем @supports в CSS файлы ваших демо на CodePen

Scroll to top
Read Time: 2 min

Russian (Pусский) translation by Ellen Nelson (you can also view the original English article)

Когда ваши демо-версии в CodePen зависят от передовых CSS, будет не плохо предупредить людей. Покажем уведомление, если браузеры не поддерживают наши демки, используя правило @support, чтобы сделать удобный многоразовый объект CodePen.

Конечный результат

Вот то, что мы хотим сделать; многоразовое уведомление, чтобы показать неподдерживаемый CSS. Он будет храниться почти полностью в своем собственном pen’е, который мы можем добавить к другим демкам через ссылку External CSS:

Вы увидите, что мы используем это в уроках по CSS на Tuts+, например в этих:

Правило @supports

CSS @supports существует уже несколько лет и располагает довольно приличной поддержкой браузеров. Это позволяет нам запрашивать функции и применять CSS только в том случае, если браузер поддерживает определенные свойства. Это предотвращает от применения стилей только на половину и даже позволяет нам вывести предупреждение, если мы его укажем.

Чтобы это заработало, нужно просто обернуть стили в условие, вот так:

1
@supports (display: grid) {
2
  div {
3
    /* when CSS Grid is supported, do something */
4
  }
5
}

Уведомления

Давайте сделаем пару быстрых уведомлений:

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

1
.support-initial-letter::after {
2
    content: "✋🏼 Hold on there cowboy; initial-letter is unsupported in your browser.";
3
}

не поддерживаются. Давайте добавим условие для этого::

1
@supports (initial-letter: 1) or (-webkit-initial-letter: 1) {
2
  .support-initial-letter::after {
3
    display: none;
4
  }
5
}

«если initial-letter или -webkit-initial-letter поддерживаются, не отображать уведомление .support-initial-letter»..

1
<div class="support-backdrop-filter"></div>

@supports в своих pen; Джен Симмонс делает это, Рэйчел Эндрю делает это, и мы это делаем. Вытягивание стилей уведомлений во внешний pen — это отличный способ управлять такими вещами, не захламляя разметку. Обновляйте сообщения, добавляйте новые свойства CSS, применяйте временный стиль, сходите с ума! Сообщите нам, как вы используете @supports в комментариях..

  • Определение свойств CSS: Modernizr или Feature Queries?>
  • supports на MDNN
  • dding External Resources на CodePenn

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Web Design tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.