Разработчики с нетерпением ждали появления в CSS кастомных свойств. Это мощная технология, которая уменьшает повторение кода, улучшает читаемость и делает код более гибким.
Мы подготовили для вас три статьи о кастомных свойствах в CSS. Из них вы узнаете, что такое кастомные свойства и зачем они нужны, чем они отличаются от свойств в Sass, и какие есть ограничения при работе с кастомными CSS-свойствами. Чтобы разобраться в этом, вам понадобится знание CSS и основ JavaScript. В статьях мы разбираем простые примеры, которые помогут вам понять основы работы с кастомными свойствами.
Кастомные свойства или CSS-переменные?
Многие называют их CSS-переменными. Говоря «переменная», возникает вопрос о типах данных, которые в ней хранятся. Подразумевают, что в переменных могут храниться те типы данных, которые существуют в конкретном языке программирования. Но в CSS всё не так. В CSS есть много разных типов данных: от текста до цветов и единиц измерения.
В переменных можно записать код цвета или размер элемента, но сохранятся эти данные как строки. Это накладывает ряд ограничений на разработчика при использовании кастомных свойств там, где важен тип данных. Например, в медиа-запросах. Именно поэтому мы используем термин «пользовательские» или «кастомные» свойства, принятый в документации.
Что такое авторский дизайн в ювелирных украшениях на примере ювелирного бренда Сила природы?
Синтаксис
Кастомные свойства позволяют сконфигурировать будущий макет ещё до начала разработки компонентов. Верстальщик получает от дизайнера вместе с макетом набор правил, по которым будет выстраиваться палитра сайта, типографика, сетка. До появления кастомных свойств верстальщики использовали препроцессоры, чтобы изначально задать подобную систему в коде и следовать принципу «DRY» (Don’t Repeat Yourself с англ. «не повторяйся»). Они сохраняли набор этих правил в отдельные Sass- или Less-переменные, писали миксины и в целом применяли комплекс мер по оптимизации своей работы и структурированию кода. Это круто и удобно, но требует последующей компиляции в CSS, ведь этот язык понимает браузер.
Теперь часть этих задач можно решать нативно, средствами платформы через кастомные свойства. Например, дизайнер определил цветовую палитру нашего будущего сайта. Для простоты пусть в нём будут два цвета — чёрный (ну, не совсем чёрный) и белый. Так выглядит глобальная конфигурация этих цветов на CSS:
:root
В этом коде мы определили два кастомных свойства с именами —color-black и —color-white и присвоили им значения. Эти свойства определены для селектора :root — корневого элемента документа. Для HTML-документа :root — это элемент html, а для SVG — svg. Важно, что кастомные свойства работают и с HTML-документами, и с SVG.
Определив кастомное свойство на уровне корневого элемента, можно обращаться к его значению по имени кастомного свойства внутри блоков CSS, атрибутов style в HTML или атрибутов SVG-документа.
Синтаксис, которым нужно пользоваться:
.block < /* ключевое слово var даёт браузеру понять, что нужно искать кастомное свойство с именем в скобках. Это работает в CSS, HTML, SVG */ color: var(—color-black); >
Можно даже вынести настройки палитры в отдельный файл, чтобы хранить там всю глобальную конфигурацию. В примере мы вынесли глобальные кастомные свойства в файл palette.css , а значения использовали в CSS- и SVG-элементах:
Что означает украшение в виде сердца? | Символика украшений | Ювелирное дело
Эти принципы должны быть вам знакомы, если вы использовали переменные в препроцессорах. Но почувствуйте разницу: вы работаете нативно, можете использовать кастомные свойства внутри атрибутов HTML и SVG.
Зачем это всё нужно?
Кастомные свойства позволяют описывать и управлять конфигурацией блоков или всего сайта. Это упрощает поддержку проекта, ведь вместо поиска нужных значений внутри множества CSS-блоков, разработчики создают единый источник данных для всей дизайн-системы сайта.
Особенно удобно с помощью кастомных свойств задавать разные темы всему приложению или отдельным его блокам. Меняя значения кастомного свойства, все зоны в коде, которые хранят их, обновляются реактивно. В этой статье мы рассмотрим применение кастомных свойств на задачах, связанных с темизацией.
Поддержка браузерами
Поддержка браузерами очень хорошая. Правда, если вам нужно поддерживать Internet Explorer, от кастомных свойств, вероятно, придётся отказаться или для IE11 воспользоваться полифилом. Его работа основана на поддержке этим браузером специфического синтаксиса для кастомных свойств. В этой статье мы не будем рассматривать этот подход.
Сфокусируемся на том, что является стандартом в работе с кастомными свойствами. В ваших проектах полифил может стать неплохим решением, но учитывайте, что он немало весит и гарантированно замедлит сайт, так как будет искать циклом на JavaScript все элементы, на которые воздействуют кастомные свойства.
Поддержка кастомных свойств браузерами. Источник: caniuse.com
Тем не менее, для браузеров, которые не поддерживают кастомные свойства, можно создавать фоллбэки:
.block < color: #1e1e1e; /* эту строчку прочитает IE */ color: var(—color-black); /* а эту строку IE проигнорирует, а браузеры с поддержкой кастомных свойств выполнят инструкцию */ >
Создание фоллбэков можно автоматизировать плагином postcss-custom-properties при постпроцессинге через POSTCSS. Этот плагин проставит фоллбэки за вас, если кастомные свойства заданы на уровне корневого элемента. Если же кастомные свойства заданы на уровне отдельных блоков, у POSTCSS возникают проблемы. Расскажем об этом в следующей статье.
Синтаксис кастомных свойств позволяет указывать альтернативное значение в случае, если доступ к кастомному свойству по имени невозможен:
.block
В этом примере свойство color будет ожидать на вход значение от кастомного свойства —color-black , а если не получит его, применит альтернативное значение #1e1e1e. POSTCSS знает такой синтаксис и сможет создать на основе альтернативного значения фоллбэк для старых браузеров.
Так выглядит наш пример, если задать все необходимые фоллбэки. Обратите внимание, что свойство fill для svg-иконки мы вынесли из HTML-атрибута в CSS. Если раньше мы старались показать, как по-разному можно использовать кастомные свойства, то теперь организовали код так, чтобы создание фоллбэков можно было автоматизировать одним POSTCSS-плагином.
Реактивность и управление через JavaScript
Кастомные свойства — часть CSS и консистентная часть веб-платформы. Поэтому JavaScript имеет доступ к управлению кастомными свойствами напрямую. Это позволяет просто решать задачи темизации. Изменив значение кастомного свойства, весь созависимый с ним CSS реактивно изменит свои значения.
Получить значение кастомного свойства через JavaScript можно в три шага:
Задать значения кастомных свойств элементу можно в два шага:
Когда исполнится второй код, моментально поменяется цвет всех элементов, для которых указана связь с кастомным свойством —color-black . Тем не менее для практических задач темизации подобная мутация палитры не обоснована. Палитра представляется нам как единая и неизменная конфигурация, содержащая весь набор цветов, которые используются в приложении. Поэтому на практике для темизации удобнее создать отдельный «слой» кастомных свойств. Он будет отвечать за свойства элементов на странице, а не за цвета, используемые на сайте. Но каждое кастомное свойство в этом «слое» будет связано с определённым цветом палитры.
:root < /* кастомные свойства палитры */ —color-dark: #1e1e1e; —color-black: #000; —color-light: #dde4fd; —color-white: #fff; /* кастомные свойства, которые будем использовать для темизации */ —bg-color: var(—color-dark); —text-color: var(—color-white); >
Такое разделение кастомных свойств на палитру и слой темизации решает две задачи:
- Сохраняет палитру единым конфиг-файлом для стилей сайта.
- Обеспечивает понятность написания кода в дальнейшем.
Второй пункт лучше проиллюстрировать. Рассмотрим два примера.
.block
Вместо изменения палитры, мы преобразовываем кастомные свойства уровня темизации, меняем связь между свойствами элементов страницы и цветами палитры. Читая JavaScript-код, сразу понятно, что мы делаем фон светлым, а текст — чёрным. Если не вводить отдельный слой кастомных свойств для темизации, мы можем получить что-то подобное:
elem.style.setProperty(‘—color-white’, ‘#000’);
Это выглядит нелепо. Такой код точно смутит вашего коллегу, который придёт развивать ваш код после вас. Разделение на слои ограждает от подобных неурядиц. Это не единственный путь, но самый очевидный для первого знакомства с практикой использования кастомных свойств.
Доработаем наш пример про отсутствие вечеринок — добавим переключатель темы с тёмной на светлую. Задачу будем решать «в лоб», чтобы было понятно.
В примере мы разложили кастомные свойства на отдельные файлы — palette.css и theme-config.css , чтобы ещё сильнее разделить наши слои по смыслу. Скрипт theme-changer.js работает прямолинейно: создаёт две отдельные функции на каждую из тем страницы. Это не самое универсальное решение, но оно отлично демонстрирует основу работы с кастомными свойствами.
Заключение
В этой статье вы познакомились с основами использования кастомных свойств. Этой базы достаточно, чтобы начать экспериментировать. Уже после прочтения статьи вы могли заметить сильные стороны кастомных свойств: реактивность, доступ из JS и нативную реализацию необходимой функциональности. Но это далеко не все преимущества.
В первой статье мы умышленно опустили особенности работы с кастомными свойствами. Сейчас вы знаете синтаксис и имплементацию стандарта, а в следующих статьях мы подробнее остановимся на сравнении кастомных свойств и переменных из препроцессоров, расскажем про ограничения работы с кастомными свойствами. Этих знаний хватит, чтобы начать применять кастомные CSS-свойства в своей работе.
Источник: tproger.ru
Кастомный — что это такое? Определение, значение, перевод
Кастомный (ударение на «а») означает «сделанный по индивидуальному проекту» или «заточенный под индивидуального пользователя». Английское слово «custom» можно перевести как «обычай». Получается, что «кастомный», в широком смысле, значит «несущий в себе индивидуальные черты», в отличие от серийного, массового и стандартного.
Кастомным может быть, например, автомобиль, который выпущен малой серией и заточен под индивидуального владельца. Кастомной может быть сборка программы, заточенная под индивидуального пользователя или под особенности рынка конкретной страны. И конечно, кастомная версия движка для сайта призвана учитывать уникальные потрЕБности заказчика, который, как известно, всегда прав.
Метки / Сленг
Понравилась страница?
Пожалуйста, поделитесь ссылкой с друзьями:
Источник: clov.net
Кастомизация одежды: что это такое и почему это мировой тренд 2023
Кастомизация одежды — модный тренд №1 уже пятый год, на что обратил внимание авторитетный ресурс Business of Fashion . Мы все хотим выделяться, носить вещи с историей, отражающие именно наш характер. Так что предлагаю разобраться, что же это за явление такое.
Алена Архипова
Гардеробный психолог и дизайнер одежды Для меня гардероб — это не просто одежда, а образ мышления, поведения и самовыражения в современном обществе.
Что такое кастомизация одежды?
В переводе с английского, customize — «настраивать, персонализировать, подгонять», то есть изменять что-то под себя, под свои индивидуальные особенности и предпочтения. Custom made clothing — одежда, созданная по индивидуальным меркам. В переводе на нашу ментальность — это вещь, сшитая под конкретного человека.
При этом в русскоязычном пространстве термин custom clothing смешивается с понятием DIY (do it yourself), что означает «переделка старых вещей в новые путем добавления персонализированных элементов или деконструирования». Например, когда покупаем вещи, бывшие в употреблении — second hand или vintage — и меняем их крой, внешний вид. Некоторые дизайнеры как раз специализируются на этом, например Roma Uvarov Design создает целые коллекции из вещей с блошиных рынков и комиссионок. Проще говоря, мы воспринимаем термин «кастомизация» как придание индивидуальности вещам через переделку, добавление персональных элементов или их брендирование. Ателье с индивидуальным пошивом, роспись курток красками, вышивка на одежде, создание украшений по индивидуальным меркам, обуви — все это можно назвать кастомным производством.
Почему кастомизация стала модной в 2023?
Кастомизация одежды имеет долгую историю. Первые принты на шелке обнаружены в Древнем Китае во II веке до н.э., задолго до появления печати на бумаге. Такие вещи были доступны только избранным. Затем техника штучной печати распространилась в другие части Азии, Африку и позже в Европу. С развитием промышленности уже в середине XIX столетия компании стали брендировать свои продукты.
Логотипы наносили прямо на ткань или упаковку. Среди дизайнеров одежды, или правильнее сказать кутюрье, первым стал брендировать свои роскошные платья Чарльз Ворт, нашив на одежду то, что мы сейчас понимаем под биркой. Массовый тренд на индивидуализацию одежды пришел из США.
Сначала это были футболки для продвижения отдельных бизнесов штата Флориды, а позже движение хиппи в 1970-х подхватило идею персонализировать свои образы. Именно они стали украшать джинсовки патчами, бусинами и различными вышивками, транслируя свой фирменный знак — «peace» (мир). Молодые люди расписывали и кастомизировали одежду, выражали себя и свою принадлежность к субкультуре.
В последние десятилетия кастомизация вышла далеко за рамки отдельных сообществ. Все больше потребителей — от миллениалов до более взрослого поколения — любят менять вещи под себя.
Есть еще один фактор, способствующий движению вперед — тенденция на осознанное и экологичное потребление. Хочется простого и понятного гардероба, который работает не один сезон. И даже базовые вещи современный потребитель выбирает тщательно: не только по качеству ткани и пошива, но и по эмоциональному потенциалу. Людям нравится носить одежду уникальную, созданную под них. Сопричастность к созданию кастомных вещей также повышает эмоциональную ценность.
Как и где покупают кастомизированные вещи?
Модные бренды создают специальные сервисы-ателье или добавляют на сайтах функцию кастомизации. Согласно опросу Infosys , 86% покупателей говорят, что такая возможность оказывает влияние на их решение о покупке. Плюсы очевидны! Вы можете:
— Принять участие в дизайне
Некоторые мировые бренды, например Ralph Lauren, Louis Vuitton и Dior, предлагают кастомизацию своих товаров. Создать свой дизайн обуви можно в сервисе Nike ID . На сайте сервиса Burberry Bespoke можно зависнуть на несколько часов, выбирая размер, стиль, ткань и цвет тренча. У Santoni и Prada можно создать свой дизайн лоферов и лодочек, а у Gucci — украсить нашивками сумки.
— Заказать стиль под себя
Есть стайлинговые сервисы, например американский Stitch Fix или российский TheCapsula.ru , где стилисты выбирают 5–7 вещей по вашим параметрам. Достаточно заполнить анкету и затем примерить готовые образы, когда придет посылка. Российские компании также развиваются в этом направлении.
Создать обувь по своему дизайну можно в Afour Custom , а используя сервис «Рубашка на заказ», вы точно купите вещь с идеальной посадкой. Alena Arkhipova предлагает индивидуальный подбор гардероба под конкретного человека: проект CAPSULA , а также кастомный пошив ready-to-wear моделей одежды ее бренда. Вы можете выбрать ткань, цвет, элементы в одежде под себя, создать рубашку с персональным принтом или цитатой, отражающей ваши ценности.
Какое будущее у кастомизации?
Под понятие кастомизации одежды попадает и создание «умной» или «интеллектуальной» одежды (E-apparel). В такие вещи могут быть встроены электронные устройства: плееры, системы GPS, позволяющие отслеживать перемещение человека и другие. Одежда также может быть выполнена из метаматериалов с особыми свойствами: спасающая от жары или подзаряжающая смартфон например.
Кастомизации одежды способствуют и IT-продукты для более легкого, интересного шопинга. Виртуальные примерочные: загружаете свою фотографию и примеряете образ. Вам удобно, и у магазина возвраты одежды сокращаются до 40%! И таких примеров много, в том числе и российских.
Новые технологии в кастомизации — это 3D-печать. Она позволяет дизайнерам создавать индивидуальные по формам и размерам объекты, начиная с украшений и заканчивая обувью и сумками. Такая digital-одежда может быть создана как прототип реальной или остаться в виртуальном пространстве — для соцсетей, Snapchat или NFT-арта.
Источник: www.yapokupayu.ru