Походження "мобільних перших"
Ідея "мобільного спочатку" щодо чуйного дизайну походить з того часу, коли браузери для мобільних пристроїв були набагато менш здатними, ніж те, що ви знайдете на настільному пристрої. Багато з них взагалі не підтримували медіа-запити, тому ідея створити фантазійний дизайн робочого столу, а потім дотримуватися стилів, використовуючи медіа-запити для вузького огляду, випадає на обличчя.
Відсутність підтримки медіа-запитів насправді є першим медіа-запитом.
- Брайан Рігер
Мобільний спочатку все ще актуальний?
Незважаючи на те, що браузери для мобільних пристроїв наздогнали своїх колег на робочому столі, "мобільний спочатку" все ще є найбільш логічним способом написання ваших стилів.
Я вважаю за краще думати про те, щоб "уникати скасування декларацій попереднього стилю". Аддитивний підхід, а не виписування стилів, а потім їх переосмислення, майже завжди призведе до більш компактної таблиці стилів. Стилі, що підходять для більшості / всіх пристроїв, слід знаходити поза медіа-запитами, тоді як стилі, що стосуються лише певного вікна перегляду, повинні стояти за медіа-запитом.
Порівняйте підхід "спочатку на робочому столі":
.column {
float: left;
width: 50%;
}
@media all and (max-width: 50em) {
.column {
float: none;
width: auto;
}
}
До "мобільного першого" підходу:
@media all and (min-width: 50em) {
.column {
float: left;
width: 50%;
}
}
Результати однакові, але пізніші - більш компактні. Зразки стилів безсоромно копіювали з 7 звичок Бреда Мороза високоефективних медіа-запитів .
Є кілька рідкісних винятків, коли "спочатку робочий стіл" є більш підходящим, ніж навпаки. Найбільш помітним з них є те, коли ви робите такі речі, як чуйні таблиці. Ширші вікна перегляду захочуть типи за замовчуванням для таблиць, але вузький вікно перегляду захоче змінити все це, щоб вміст можна було складати вертикально.
Не розбивайте свої таблиці стилів
Одне, чого ви абсолютно не повинні робити, - це розбивати свої стилі реагування на окремі CSS-файли та використовувати медіа-атрибут на елементі посилання. Це призводить до небажаних наслідків того, щоб UA завантажувала всі пов'язані таблиці стилів (тобто для цього немає покращення швидкості).
<!-- this is bad, don't do this -->
<link rel="stylesheet" media="(max-width: 800px)" href="example.css" />
Отже, код повинен спочатку бути мобільним, а як щодо підходу до дизайну?
Я вважаю, що це не має значення. Макети для всіх вікон перегляду, що мають відношення до дизайну, повинні бути виконані (це може включати в себе якнайменше 2 або стільки 5, як тільки ви враховуєте будь-які незначні точки прориву, які можуть знадобитися!), Замовлення в кінцевому підсумку не має значення. Багатьом дизайнерам не вистачає дисципліни, щоб почати з макета робочого столу і виявити, що починати з мобільного макета простіше.
Якщо ви хочете почати з макета робочого столу, ви повинні уникати спокуси заповнити всю цю славну пробілу простору, яка не покращує вміст цієї сторінки. Вам дійсно потрібно, щоб 800x600 запас фото усміхненої жінки, що тримає телефон? Це просто коштує мобільному користувачеві додаткових грошей, щоб завантажити непотрібний пух, і це лише візуальне відволікання для настільного користувача, щоб пропустити минуле.