Семантическая модульная сетка для завтрашних шаблонов
Библиотеки CSS для модульных сеток облегчают нашу жизнь. Но и в них есть недостатки. К счастью, новейшие техники предлагают свежие подходы к проектированию шаблонов. Но прежде, чем получить решение, надо разобраться в трех непреодолимых пороках текущих версий модульных сеток CSS.
Проблема №1. Они не семантические.
Библиотеки модульных сеток CSS не позволяют разделить разметку и представление. Для построения сетки дизайнеру приходится использовать классы CSS типа .grid_x
для элементов HTML, смешивая информацию о представлении с остальной семантической разметкой.
Плавающие блоки также должны обрабатываться, что также влечет за собой использование дополнительных элементов на странице. Вот как используется отмена обтекания текстом в системе 960.gs:
<div class="grid_3"> 220 </div> <div class="grid_9"> 700 </div> <div class="clear"></div>
Проблема №2. Они не могут быть резиновыми.
Модульные сетки отлично работают в фиксированных шаблонах, но использование процентов для ширины требует ухищрений. Хотя большинство библиотек имеют опции для резиновых шаблонов, они ломаются при появлении вложенных колонок. В ниже приведенном примере использования сетки 1KB CSS Grid, элемент .grid_6
имеет ширину 50%, а элемент .grid_3
- 25%.
Но когда элемент .grid_3
появляется в ячейке .grid_6
, проценты должны быть пересчитаны. Хотя обычная сетка нуждается только в 12 правилах CSS для задания ширины, то резиновый шаблон потребует 144 правила для одного уровня вложенности: не очень утешительные сведения.
<div class="column grid_6"> <div class="row"> <div class="column grid_3"> </div> <div class="column grid_3"> </div> </div> </div>
Проблема №3. Они не адаптивны
Адаптивный дизайн веб страниц стал очень популярным в последние годы. Хотя новые инструменты (например, 1140 CSS Grid или Adapt.js) позволяют вам изменять шаблон страницы на основе сведений о размере экрана или типе устройства, оптимальное решение все еще отсутствует.
Причина проблем - используемый инструмент
Все три проблемы являются следствием ограничений, которые накладывают существующие инструменты разработки. CSS бескомпромиссно заставляет добавлять презентационные классы в разметку. Но неужели мы ничего не можем сделать? Фантастическая версия CSS уже доступна сегодня и поддерживается каждым браузером: LESS CSS.
Что такое LESS?
Вероятно, что вы уже слушали про LESS, но никогда не пробовали его. LESS расширяет CSS, придавая ему возможности использовать переменные, выполнять операции и разрабатывать макросы. Ниже приводится несколько примеров того, что можно делать.
Переменные
Определите значение один раз и затем используйте его по всему коду с помощью переменной.
// LESS @color: #4D926F; #header { color: @color; }
Выше приведенный код будет скомпилирован следующим образом:
/* Скомпилированный CSS */ #header { color: #4D926F; }
Операции
Умножение, деление, сложение и вычитание значений и цветов с помощью операций:
// LESS @border-width: 1px; #header { border-left: @border-width * 3; }
В данном примере 1px
будет умножен на 3
. Результат будет выглядеть так:
/* Скомпилированный CSS */ #header { border-left: 3px; }
Макросы
Самая мощная часть LESS. Макросы позволяют повторно использовать части кода CSS. Просто включайте макрос в класс. Но LESS также позволяет передавать параметры в макрос.
// LESS .rounded(@radius) { -webkit-border-radius: @radius; -moz-border-radius: @radius; border-radius: @radius; } #header { .rounded(5px); }
Многострочное свойство CSS3 наглядно демонстрирует использование макроса:
/* Скомпилированный CSS */ #header { -webkit-border-radius: 5px; -moz-border-radius: 5px; border-radius: 5px; }
Недостатки LESS
Таблицы стилей LESS краткие и простые для чтения, в них доступно повторное использование кода. Однако у него есть несколько потенциальных недостатков, о которых нужно знать:
- Код LESS нуждается в компиляции. Один дополнительный шаг, который отсутствует в обычном CSS.
- В зависимости от построения структуры документа LESS, скомпилированный CSS файл может быть немного больше, чем эквивалентный код, подготовленный вручную.
Компиляция LESS
Существует три подхода к компиляции стилей LESS в CSS:
- Браузер выполняет компиляцию.LESS.js - скрипт JavaScript, который может выполнить компиляцию файла LESS в код CSS непосредственно в браузере пользователя. Хотя такой метод удобен при разработке, на рабочем проекте предпочтительнее использование двух других методов (компиляция может занимать несколько сотен миллисекунд).
- Использование компилятора на серверной стороне. LESS.js может также выполнять компиляцию на стороне сервера с помощью Node.js ( LESS также портирован на несколько других языков серверной стороны).
- Использование настольного приложения.LESS.app является приложением для Mac, которое компилирует локальные файлы и сохраняет их на компьютере.
Инновации, которые LESS вносит в CSS, являются основой для нового подхода к построению шаблонов страниц. Такой подход используется в модульной сетке SEMANTIC. Ее преимущества:
- Она семантическая;
- Она может быть как фиксированной, так и резиновой;
- Она адаптивна;
- Она позволяет изменять количество колонок, ширину колонок и интервалов прямо в таблице стилей.
Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/ahvTJ2HHZ8c/lessons.php


Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2025-04-08 » Горшочек, рисуй: 10 бесплатных сервисов для генерации картинок
- 2025-04-08 » SEO-продвижение в 2025 году: 15 трендов, без которых ТОП не светит
- 2025-03-14 » SPF-запись
- 2025-03-07 » SEO на маркетплейсах: как оптимизировать карточку товара для поисковой выдачи
- 2025-02-18 » Топ-10 бесплатных нейросетей для генерации изображений: лучшие ии генераторы 2024 года
- 2025-02-11 » Критическая уязвимость в 1С-Битрикс
- 2025-02-11 » Google Search Console: руководство для начинающих вебмастеров
- 2025-02-11 » Методы измерения результативности рекламных кампаний: плюсы и минусы
- 2025-02-11 » Тренды SEO в 2025 году
- 2025-02-10 » Свой Google в локалке. Ищем иголку в стоге сена
- 2025-01-29 » SEO — это комплексная работа. Шесть главных факторов ранжирования сайтов
- 2025-01-29 » Гайд для главной страницы e-commerce сайта: как оформить, чтобы повысить конверсию
- 2025-01-20 » Krea AI выпустила бесплатную функцию преобразования изображений в 3D-объекты — их можно вращать и вписывать в фотографии
- 2025-01-19 » Отзывы на Яндекс Картах: как пройти модерацию
- 2025-01-15 » Топ-6 лучших российских нейросетей, в которых можно генерировать тексты и изображения бесплатно и без VPN
- 2025-01-14 » 15 бесплатных способов узнать, чем интересуется ваша аудитория
- 2025-01-11 » Бездепозитные бонусы в казино за регистрацию с выводом: особенности и возможности получения
- 2025-01-09 » Новая модель LAM способна выполнять задачи в Word
- 2024-12-26 » Универсальный промпт для нейросети: как выжать максимум из ChatGPT, YandexGPT, Gemini, Claude в 2025
- 2024-11-26 » Капитан грузового судна, или Как начать использовать Docker в своих проектах
- 2024-11-26 » Обеспечение безопасности ваших веб-приложений с помощью PHP OOP и PDO
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-22 » Ошибки в Яндекс Вебмастере: как найти и исправить
- 2024-11-15 » Перенос сайта на WordPress с одного домена на другой
- 2024-11-08 » OSPanel 6: быстрый старт
- 2024-11-08 » Как установить PhpMyAdmin в Open Server Panel
- 2024-09-30 » Как быстро запустить Laravel на Windows
- 2024-09-25 » Next.js
- 2024-09-05 » OpenAI рассказал, как запретить ChatGPT использовать содержимое сайта для обучения
- 2024-08-28 » Чек-лист: как увеличить конверсию интернет-магазина на примере спортпита
Не бойся быть ни как все и все захотят быть как ты! |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.
Или напишите нам в WhatsApp
Или напишите нам в WhatsApp