Верните аутлайн на место

Написал и опубликовал Тим Маринин
и поставил теги web, frontend, a11y.

На днях Илья Страйков написал коротенькую заметку, что, мол, дефолтный аутлайн-де уродское напоминание, поэтому он его выключает по дефолту в своём бойлерплэйте, а в своих проектах они ставят его назад. Я с ним не согласен, и вот почему.

Аутлайн – инструмент

Для того, чтобы аутлайн работал, он должен считываться: тот, кому он нужен, должен его заметить. Пользователь привык, как они выглядят аутлайны в его браузере, поэтому любые отличия затрудняют задачу, не говоря уже о том, что иногда кастомные аутлайны делают слишком тонкими, или неподходящего цвета.

Это можно проиллюстрировать похожим механизмом в совершенно другой области: плитка на переходах. Плитка для слабовидящих и слепых не только «с пупырышками», но ещё и характерного жёлтого цвета. В Великобритании в нескольких местах её сделали серой, чтобы она лучше сливалась с окружением – чем не очень-то доволен Ричард Холмс из Royal National Institute of Blind People. Аутлайн должен выделяться и быть узнаваемым, аутлайн лучше работает системным.

Если дизайнеру кажется, что весь его труд ломается тем, что вокруг инпутов появится аутлайн, привычный пользователю, то возникает вопрос, понимает ли дизайнер, для кого и чего он проектирует. Это веб — даже селекты в нём (о господи) классические и системные, но они работают отлично, потому что они везде такие.

Взять и пересобрать все инпуты с нуля и такого-то спана хорошо может позволить себе Яндекс – и они могут сделать себе кастомный аутлайн, который будет одинаковым во всех сервисах Яндекса. Но какая польза от «кастомщины» на сайте, куда я зайду раз или два?

Что у нас есть возможность – это отлично, но это не значит, что ей нужно воспользоваться. Вы можете поставить Comic Sans в качестве основного шрифта, но почему-то же этого не делаете.

Дефолты решают

Но ладно, не системные , но хоть какой-нибудь сделают же? Илья пишет,

Чтобы случайно не упустить этого, я отключил аутлайны в дефолтных стилях Инитума. В собственных проектах или в Кодельной мы никогда не выпустим формы без состояний. К большому сожалению, не все такие внимательные, как мы.

Я захожу на сайт Кодельной, кликаю на самый большой проект: https://journal.tinkoff.ru, продакшен, но в форме подписки аутлайна нет. Видимо, проект запустили раньше, чем пост – обратной силы не имеет, и всё такое.

Всё это подводит к мысли о силе дефолтов, то бишь, умолчаний. Я не буду рассказывать про них, и так знаете, напомню только Этвуда из 2007:

Defaults are arguably the most important design decisions you’ll ever make as a software developer

Справедливо вдвойне для разработчиков инструментов для разработки.