Я зіткнувся з тією ж проблемою пару років тому і фінансував розробку плагіна, щоб допомогти мені в роботі. Я випустив плагін як відкритий код, щоб і інші могли отримати з нього користь, і ви можете схопити його на Github: https://github.com/eqcss/eqcss
Є декілька способів, як ми могли застосувати різні стилі, що реагують на основі того, що ми можемо знати про елемент на сторінці. Ось кілька запитів елементів, завдяки яким плагін EQCSS дозволить вам писати в CSS:
@element 'div' and (condition) {
$this {
/* Do something to the 'div' that meets the condition */
}
.other {
/* Also apply this CSS to .other when 'div' meets this condition */
}
}
Отже, які умови підтримуються для чуйних стилів з EQCSS?
Вага запитів
- міні-ширина в
px
- міні-ширина в
%
- Максимальна ширина дюйма
px
- Максимальна ширина дюйма
%
Висота запитів
- мінімальна висота в
px
- мінімальна висота в
%
- Макс-висота в
px
- Макс-висота в
%
Підрахунок запитів
- міні-символи
- макс-символів
- міні-рядки
- макс-лінії
- міні-діти
- макс-діти
Спеціальні селектори
Всередині запитів елементів EQCSS ви також можете використовувати три спеціальні селектори, які дозволяють більш конкретно застосовувати ваші стилі:
$this
(елемент (и), що відповідають запиту)
$parent
(батьківський елемент (и) елемента (и), що відповідає запиту)
$root
(кореневий елемент документа, <html>
)
Запити елементів дозволяють складати ваш макет із індивідуально реагуючих модулів дизайну, кожен з яких має трохи «усвідомлення себе» того, як вони відображаються на сторінці.
Завдяки EQCSS ви можете розробити один віджет, щоб він виглядав добре від 150 пікселів в ширину до ширини 1000 пікселів, тоді ви можете впевнено скинути цей віджет на будь-яку бічну панель будь-якої сторінки, використовуючи будь-який шаблон (на будь-якому сайті) і