Tailwind CSS как кодировать пиксельный идеальный дизайн

Только начал использовать https://tailwindcss.com

И не могу понять, как кодировать идеальный дизайн пикселей только с классами попутного ветра. Простой пример: мне нужно padding-left 22px, но ближайший класс попутного ветра — pl-6 и pl-8, что составляет 24px и 32px соответственно. Итак, в конце концов, у меня есть куча классов попутного ветра + 1 пользовательский, где я делаю приготовления, что противоречит цели этой структуры «сначала утилиты».

Вы никогда не получите идеальные до пикселя проекты из фреймворка, если дизайн не создан специально с учетом возможностей/ожиданий этого фреймворка.

Bryce Howitson 10.02.2019 18:47

Я не согласен с вами, или, может быть, я бы сказал: «Вы никогда не получите идеальные до пикселя проекты из фреймворка, у которого нет никаких возможностей настройки» :) Что касается этого фреймворка, я думаю, что это можно сделать внутри tailwind.config. .js, чтобы вы могли указать любой размер, который хотите.

RomkaLTU 10.02.2019 18:52

Конечно, вы всегда можете взломать фреймворк, но это предполагает, что ваш дизайнер всегда использует одинаковую ширину столбцов, стандартизированные размеры шрифта, отступы и т. д., и т. д., и т. д. Реальность такова, что совершенство пикселей стоит очень дорого, а согласованность фреймворка, скорее всего, противоречит дизайнерским замыслам. размещение "кишка".

Bryce Howitson 10.02.2019 19:06

Рад, что вы поняли, как решить это здесь!

Bryce Howitson 10.02.2019 19:07

На самом деле вы не должны хотеть иметь «пиксельно-идеальный» дизайн, то есть полностью устаревшая парадигма, который должен был прекратить использоваться 15 лет назад. Вы не можете контролировать, какой браузер, размер экрана и окна просмотра, разрешение, масштаб браузера, масштаб ОС, пользовательский размер шрифта и т. д. будут для пользователя, который просматривает ваш продукт. Больше нет смысла пытаться сделать его «идеальным по пикселям», когда вместо этого мы должны стремиться к динамическим сайтам, которые хорошо выглядят в любых условиях, а не к статическим сайтам, которые всегда выглядят точно так же, как в Photoshop.

Stephen M Irving 13.02.2020 15:30

Как пиксель-совершенный практик с более чем 10-летним опытом, я настоятельно НЕ рекомендую использовать Tailwind для пиксельных проектов. Я понимаю, насколько заманчивым является Tailwind для разработчиков, которые не знакомы (и/или не хотят) с css/scss. На мой взгляд, это все еще катастрофа для всего мира кодирования. Я говорю это без проверки. Я сделал несколько проектов с утомительным HTML благодаря Tailwind и потратил на очистку HTML-файла даже больше времени, чем время, потраченное на css. Также заметил закономерность, что разработчики бэкенда, которых я нанимал, предпочитают Tailwind, а те, кто хорошо разбирается во фронтенде, — нет.

UX Andre 07.08.2021 09:00

@StephenMIrving на самом деле «динамические сайты, которые хорошо выглядят в любых условиях» в настоящее время считаются идеальным пиксельным дизайном. По крайней мере, в рабочей среде, где я был.

UX Andre 07.08.2021 09:02
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
CSS: FlexBox
CSS: FlexBox
Ранее разработчики использовали макеты с помощью Position и Float. После появления flexbox сценарий полностью изменился.
27
7
24 259
3
Перейти к ответу Данный вопрос помечен как решенный

Ответы 3

Ответ принят как подходящий

Хорошо, понял, мне нужно отредактировать tailwind.config.js и установить там нестандартные размеры. Например:

height: [
  ...
  '278px': '278px',
  ...
]

Теперь этот размер можно установить с помощью <div clas = "h-278px">...</div>.

Обновлять:

После того, как я выполнил множество проектов поверх TailwindCSS, я понял, что не очень оптимально устанавливать spacing/w/h... в конфигурации tailwind, если он используется только один раз. Лучше использовать пользовательский класс, который вы всегда можете использовать @apply в этом классе.

Обновление 2021:

Начиная с версии 2.1 попутного ветра мы можем включить JIT и использовать произвольные стили, например:

mb-[278px]

Я бы выбрал собственный стиль для этой конкретной цели.

Mladen Janjetovic 19.11.2019 15:28

есть ли способ определить пиксель динамически? class = "h-23px ", что число 23px или любой другой пиксель создается динамически

ThiagoL 04.12.2020 19:33

В настоящее время нет, но для этого потребуется какая-то обратная компиляция из HTML/JS/PHP в CSS. Похоже на то, что работает PurgeCSS.

RomkaLTU 06.12.2020 11:08

Теперь мы можем реализовать пиксельный дизайн с помощью библиотеки tailwindcss-jit. Они используют обозначение квадратных скобок, например <div class = "h-[278px]">...</div>

endmaster0809 15.03.2021 19:28

спасибо, эндмастер! вау, JIT теперь встроен. В Nuxt мне просто нужно было добавить режим: 'jit' в конфиг. И теперь он такой умный и быстрый, просто создает необходимый CSS!

Sharkfin 08.11.2021 11:06

Упомянут Младен Янетович, вы также можете добавить новый утилиты в настройки попутного ветра. Самый простой способ добавить собственные утилиты в Tailwind — просто добавить их в свой CSS.

@tailwind base;
@tailwind components;
@tailwind utilities;

@layer utilities {
  .h-278 {
    height: 278px;
  }
}

Итак, теперь эту высоту можно установить с помощью

<div clas = "h-278">...</div>

Используя директиву @layer, Tailwind автоматически переместит эти стили в то же место, что и @tailwind utilities, чтобы избежать непреднамеренных проблем со специфичностью. Использование директивы @layer также указывает Tailwind учитывать эти стили для очистки при очистке уровня утилит.

Я не понял, зачем использовать это, если у нас есть tailwind.config.js?

RomkaLTU 08.11.2020 14:09

@RomkaLTU основная причина в том, что это рекомендуемый способ добавления пользовательских утилит создателями попутного ветра. вторая не менее интересная причина в том, что с помощью этого метода вы можете генерировать адаптивные варианты, который позволит вам сделать, например, <div clas = "m:h-278">...</div>

Bassirou Diaby 09.11.2020 15:38

Но h - это не пользовательская утилита, пользовательская утилита - это «действительно пользовательская утилита». h, w, p и другие производные свойства интервала.

RomkaLTU 06.12.2020 11:15

Это не совсем работает, и я всего лишь пытаюсь разместить красную рамку следующим образом: @layer utilities { .red { border: 1px solid red; } }

Eduardo 06.03.2021 02:51

Вы можете попробовать это для стиля px и% -

w-[100px] or w-[50%]

Другие вопросы по теме