Как сделать красивый интерфейс в c. Иметь простые принципы заполнения полей. C помощью фокус-групп

Как сделать красивый интерфейс в c. Иметь простые принципы заполнения полей. C помощью фокус-групп

07.04.2019
  • Научитесь накладывать текст на изображения
  • Научитесь выделять и утапливать текст
  • Используйте только хорошие шрифты
  • Крадите как художник
  • Правило № 4: Научитесь накладывать текст на изображенияЕсть всего лишь несколько надёжных способов красиво наложить текст на изображения. Я расскажу вам пять и ещё один в качестве бонуса.

    Если вы хотите быть хорошим дизайнером интерфейсов, вам нужно научиться накладывать текст на изображения так, чтобы это выглядело красиво. Это то, что умеет делать каждый хороший дизайнер интерфейсов, и не умеет плохой. Так что после прочтения этой статьи у вас уже будет преимущество!

    Метод № 0: Наложение текста напрямую на фотографию

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

    Чёрный фильтр самый простой и универсальный, но вы также можете использовать и цветные фильтры.

    Метод № 2: Текст-на-фоне

    Это ещё один простой и надёжный способ. Начертите слегка прозрачный чёрный прямоугольник и расположите на нём белый текст. Если прямоугольник будет достаточно тёмным, то снизу у вас может быть практически любая фотография и текст всё равно будет хорошо читаться.


    Концепт приложения для iPhone от Miguel Oliva Marquez

    Здесь также можно использовать цвет, но в пределах разумного.


    Концепт в розовом цвете от Mark Conlan

    Метод № 3: Размойте изображение

    Как ни странно, хороший способ сделать текст читабельным - это размыть часть картинки.


    В Snapguide размыта обширная часть картинки. Заметьте, что она также затемнена.

    Такой способ стал особенно популярен после выхода iOS 7, хотя широко использовался ещё в Vista.

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


    Teehan + Lax

    Я имею в виду, просто попытайтесь прочесть подзаголовок внизу.

    Метод № 4: Затемните низ

    В этом варианте изображение слегка затемняется к низу и сверху располагается белый текст . Это очень искусный метод, и я не знаю, использовал ли его кто-то до Medium, но я увидел его именно там.

    Случайному наблюдателю может показаться, что в коллекциях Medium белый текст нанесён напрямую на изображение. Но это не так ! Здесь есть едва заметный градиент чёрного цвета с середины изображения к низу (с прозрачностью от 0 до примерно 20 %).

    Его не так просто заметить, но он определённо там есть, и это совершенно точно улучшает читаемость текста.

    Заметьте, что Medium использует небольшую тень в тексте при наложении на миниатюры коллекций, что ещё больше повышает читаемость. В конечном итоге, Medium может наложить любой текст на любое изображение и получить хороший результат.
    Вы спросите, почему изображение нужно затемнять книзу? Ответ на этот вопрос читайте в Правиле № 1 - свет всегда падает сверху. Чтобы выглядеть наиболее естественно для наших глаз, изображение должно быть немного темнее книзу, так же как и любой другой предмет, который мы видим .

    Ещё один продвинутый способ: затемнение и размытие...

    Бонус - Метод маскировки

    Заголовок «Material Design» выделен множеством способов. Он большой , очень контрастный и выделен болдом .

    Текст в футере, наоборот, утоплен. Он маленький , неконтрастный и более тонкого начертания .

    А сейчас самое важное.

    Название страниц - это единственный элемент на сайте, который нужно только выделять . Остальные элементы нужно выделять и утапливать одновременно.
    Если вам нужно выделить какой-то элемент, используйте одновременно способы для выделения и утапливания текста. Это поможет не перегружать интерфейс, но в то же время придаст разным элементам тот визуальный вес, который им необходим.


    Баланс визуальных стилей.

    Сайт Blu Homes - пример безукоризненного дизайна. Там есть большой заголовок, но слово, на котором делается акцент, написано строчными буквами - слишком много выделений выглядело бы избыточно.

    Цифры привлекают к себе внимание с помощью размера, цвета и расположения - но заметьте, что они одновременно утоплены с помощью более тонкого шрифта и менее контрастного цвета , чем тёмно-серый.

    Подписи под цифрами, несмотря на то что они серые и маленькие, набраны прописными буквами и более жирным шрифтом .

    Всё дело в балансе.

    Contents Magazine хороший пример выделения и утапливания текста.

    • Название статей - это единственный элемент на странице, который набран не курсивом . В этом случае, именно отсутствие курсива привлекает внимание (особенно в комбинации с жирным начертанием).
    • Имя автора выделено болдом - в отличие от слова «by», набранного обычным шрифтом.
    • Маленькая, неконтрастная подпись «ALREADY OUT » никому не мешает. Но благодаря прописным буквам, щедрой разрядке и большим полям тут же привлекает внимание.
    Активные и выбранные элементы

    Выделение активных элементов - это более сложный раунд всё той же игры.

    Обычно, если менять размер шрифта, его начертание или строчные буквы на прописные, то изменится площадь, которую занимает текст . А это может привести к непредвиденным результатам.

    Что же тогда делать?

    Можно использовать:

    • цвет текста,
    • цвет фона,
    • тени,
    • подчёркивание,
    • небольшую анимацию (подъём, опускание и т. д.).
    Вот один проверенный способ: попробуйте сделать белые элементы цветными или цветные элементы белыми, но затемнив при этом фон.


    Выбранная иконка стала белой, но сохранила контраст по отношению к фону.

    Вывод такой: научиться выделять текст очень сложно. Каждый раз, когда у меня что-то не получалось, я понимал, что мне нужно стать лучше. А чтобы стать лучше, нужно пробовать.

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

    Сайты с очень отличительным характером могут использовать отличительные шрифты . Но для большинство интерфейсов нужно что-то чистое и простое .

    Так что скачайте их прямо сейчас для вашего следующего проекта.


    Все скаченные вами шрифты можно найти в приложении Шрифты во вкладке Пользователь.


    Ubuntu

    Ubuntu имеет множество начертаний. Для некоторых приложений он слишком специфичен, для других - подходит идеально. Можно скачать на Google Fonts .


    Open Sans

    Open Sans - популярный шрифт, легко читается. Хорошо подходит для основного текста. Можно скачать на Google Fonts .


    Bebas Neue

    Bebas Neue отлично подходит для заголовков. Состоит только из прописных букв. Можно скачать на сайте Fontfabric и там же посмотреть примеры использования.


    Montserrat

    Montserrat доступен только в двух начертаниях, но этого достаточно. Этот шрифт - лучшая бесплатная альтернатива Gotham и Proxima Nova, но он далеко не так хорош, как они. Можно скачать на Google Fonts .


    Raleway

    Raleway подходит для заголовков, возможно, немного чересчур для основного текста (эти «w»!). Очень красиво выглядит начертание Ultralight (нет на картинке). Можно скачать на Google Fonts .


    Cabin


    Lato


    PT Sans


    Entypo Social

    Entypo Social - это шрифт из иконок и да, он повсюду . Но сами иконки - чистое золото. Не хотите перерисовать все эти логотипы социальных сетей на цветных кружочках? Я тоже. Можно скачать на очень хорошо работает с цветом. Но не слишком сосредотачивается на UX - хотя это проблема dribbble в целом.



    Работы Focus Lab и Cosmin Capitanu .

    Я без понятия, кто такой «warmarc», но его доска на Pinterest с примерами мобильных интерфейсов всегда нереально помогала мне в поисках хорошего дизайна.

    Это галерея скриншотов мобильных приложений. На Pttrns классно то, что весь сайт организован по UX паттернам. Это очень облегчает поиск в зависимости от того, над каким элементом интерфейса вы сейчас работаете, будь то страница с регистрацией, личный кабинет, результаты поиска и т. д.

    Я глубоко убеждён, что каждый художник должен копировать до тех пор, пока он не сможет имитировать самые лучшие работы . И только потом можно искать свой стиль и создавать новые тренды.

    А пока крадите как художник.

    Название этого раздела, кстати, взято из одноименной книги, которую я не читал, так как подозреваю, что в заголовке уже раскрыта её основная мысль.

    Заключение Я написал эту статью, потому что сам хотел бы её прочесть пару лет назад. Надеюсь, она вам поможет. Если вы UX-дизайнер , то сделайте красивый макет после того, как набросаете прототип. Если вы разработчик , то перейдите на следующий уровень и сделайте так, чтобы ваш проект выглядел красиво. Для этого не нужно заканчивать институт искусств. Достаточно наблюдать , имитировать и рассказывать друзьям, что работает, а что нет .

    В любом случае, это лишь то, чему я сам успел научиться. А я всегда остаюсь в этом деле новичком.

    Вы можете помочь и перевести немного средств на развитие сайта

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


    Начну издалека: BotUI - это новый интерфейс настроек проекта , чтобы заменить старые и не очень юзабельные "Входящие настройки" для шаблонов/ботов. Он появился в версии 5.11.0.0 и сейчас практически с каждой новой версий активно дополняется и развивается. Многообещающее нововведение для тех, кто делает шаблоны "на заказ" или для продажи "в несколько рук". Через данный интерфейс можно сделать очень красивые настройки, которые помогут работать с шаблоном не зная самого ZennoPoster. На сколько я слышал - в дальнейшем планируется привести их к такому виду, чтобы клиент вообще мог не запускать ZennoPoster/ZennoBox и работать с шаблоном только из BotUI (поправьте меня, если я не прав, но вроде бы где-то на форуме я читал именно это). Я пишу эту статью и привожу примеры, используя последнюю актуальную версию ZennoPoster 5.12.3.0.

    SpoilerTarget">Spoiler: Предисловие

    Когда подавал заявку на конкурс, то хотел просто накидать несколько примеров, которые по моему субъективному мнению могут быть полезны (хоть я сам и не использую BotUI, а ). Но в ходе написания статьи я заметил некоторые недоработки со стороны разработчиков, и мне пришла в голову мысль, что используя такой инструмент, как "Конкурсная статья" - я могу обратить на них внимание Мой внутренний перфекционист просто не может оставить бесследно какую-то багу, которую он находит в этом замечательном софте, которым я пользуюсь уже более 2-х лет с огромным удовольствием.

    Поэтому я начну с того, что мне бросилось в глаза при написании статьи:

    • Почему-то в коде BotUI есть загрузка скрипта гугл аналитики, причем это сделано таким образом, что он никогда не загрузится (из-за неправильно указанного протокола file:// ). Вот этот фрагмент из кода:
    • Неправильно прописан путь до "_all-skins.min.css", при загрузке всегда будет 404 и эти стили не подключаются. Фрагмент кода:
    • Стиль "pointer-events: none;", на который так и остался, и он всё также мешает при тестировании кода в браузере (в том обсуждении был предложен более-менее удобный вариант, но, по всей видимости, эти данные просто не дошли до разработчиков).
    • Пути к стилям и JS зависят от той версии ZP, в которой шаблонописатель сделал свой проект. Если у покупателя шаблона не будет установлено такой версии, то скорее всего (я не тестировал, но подозреваю), что нужно будет копировать содержимое папки HtmlEditorContent из версии ZP шаблонописателя. Иначе всё просто может "поехать" На самом деле это важно и стоит учитывать такое поведение при разработке BotUI.
    • При добавлении элементов на интерфейс - код не выравнивается, всё скидывается в кашу. Никаких отступов, никаких пустых строк, всё в одной куче. Причем в некоторых случаях родительские теги div то "склеиваются" в одну строку с дочерними элементами (input/textarea/button), то идут отдельными строками. Редактировать такой код - сущий ад, но во всех своих тестовых шаблонах я отформатировал код, чтобы от него не начал дергаться глаз при просмотре этих примеров.
    • Также, в конце блока есть предустановленные стили, они не отформатированы, а "выплюнуты" как есть, из-за больших отступов перед ними - код смотрится очень коряво.
    • При добавлении кнопки к ней автоматически добавляется атрибут onclick="userOnClickXX()" , причем эта функция не задана в js (но пустой всё равно добавляется). По факту добавлять этот обработчик нужно только тогда, когда явно задано какое-то действие в поле "OnClick" в панели "Свойства".
    • AlignToGrid (выравнивание по пиксельной сетке) не работает при перемещении элементов, используя "стрелки" - они передвигаются по 1 пикселю. Но при изменении размеров с помощью мыши - работает. (Возможно, это не баг, но стоит иметь ввиду)
    • При изменении ElementId для checkbox - он почему-то задается тегу label, а не тегу input (хотя, например, для input password - всё ок). Корректнее использовать id для input, а в label передавать его через атрибут "for".
    • Почему в "Панели инструментов" есть элемент "Label", но по факту в коде добавляется обычный div? Это взято из конструктора элементов под какую-то десктопную IDE (VisualStudio, например)? Тогда просто логичнее назвать этот элемент "Text", т.к. интерфейс - это html код, а в нём смысл термина "Label" - это совсем другая сущность.
    • У элемента "Label" нельзя поменять шрифт из настроек, хотя подгружается сразу несколько шрифтов и в принципе, это возможно.
    • Невозможно работать с добавленными руками тегами. То есть если я добавлю где-то в коде свой элемент, то потом его нельзя выделить и соответственно переместить/удалить.
    • Если добавить элемент Tab, а затем изменить его (хотя бы выравнять код) в редакторе, то потом при добавлении других элементов внутри его содержимого - их нельзя редактировать/выделить/удалить.
    • Если переформатировать код и изменить id у родительского div для "Translate Service", то его становится невозможно выделить в редакторе интерфейса BotUI.
    • Такое чувство, что нумерация id в добавляемых элементах глобальна для всех открытых шаблонов на время сессии ProjectMaker. Почему-то после создания нового проекта и добавления туда элемента - она не начинается с 0 или 1, а идет с трехзначных цифр (причем если делать несколько шаблонов подряд - эти цифры всегда увеличиваются, но не "сбрасываются"). Почему так сделано - остается загадкой.
    • В последнем шаблоне используется сторонняя css-библиотека для анимации и почему-то она не работает в ZennoPoster, хотя в "Просмотре" интерфейса в ProjectMaker - всё превосходно работает.
    • Также, при использовании animate.css почему-то "дергается" главный заголовок при выполнении некоторых эффектов, хотя ничего с ним не связано.
    Да простят меня админы и не удалят этот абзац, так как тем, кто будет разрабатывать под BotUI лучше знать эти особенности, пока нет новых версий и это всё не исправлено каким-то образом.

    Интерфейс BotUI - это html+css+javascript , которые выполняются во встроенном браузере. За счет того, что можно редактировать внешний вид интерфейса с помощью кнопки "Открыть код " - можно делать там практически всё тоже самое, что сейчас можно сделать на обычных сайтах. Я даже подозреваю, что можно добавить iframe и уведомлять с его помощью клиентов о выходе новой версии шаблона или о чем-то важном.

    Собственно, jQuery - это JavaScript библиотека, с помощью которой можно манипулировать HTML-элементами на странице (в нашем случае - кнопками, селектами, текстом и так далее). В моей версии ZennoPoster в интерфейсе BotUI используется jquery version 3.1.1 (можно узнать, посмотрев исходный код интерфейса через вышеуказанную кнопку и найдя "jquery-3.1.1 .min.js").
    jQuery - очень популярная и старая библиотека, которая позволяет писать более-менее нормальный код на JS и не парится над тем, как всё будет работать в различных браузерах (но конкретно нам сейчас это не важно, но знать - стоит).
    Вся документация по взаимодействию с jQuery находится по адресу: http://api.jquery.com/ - да, она на английском, но можно найти и описание на русском, только скорее всего там будет очень много устаревшей информации. Но базовые принципы и вещи должны и будут работать, но обращаться как к первоисточнику - нужно всегда к оригинальной документации.

    И как это "кушать" (использовать)? ​


    Хотелось бы написать очень подробное руководство по применению jQuery и JavaScript в целом, но боюсь, что закопаюсь в дебри, поэтому некоторые вещи я буду подавать без длительного объяснения "Как? Почему? И зачем?". Думаю, если вы никогда не "трогали" javascript/jQuery - для вас всё будет на первый взгляд сложно и не очевидно (особенно после десктопных языков программирования, бугага). Поэтому советую вам ознакомится с некоторыми старыми, но пока ещё актуальными статьями и книгами о том, как подружиться с JavaScript/jQuery:

    Как минимум вы должны знать что такое: html, css, селекторы, обработчики и методы.


    В целом разработка под web - позволяет совершать ошибки и не особо заботится о том, что их не будет в 100% случаев. Специфика не та, не ракеты запускать
    Но всё же, знать как протестировать свой код - нужно и это будет очень полезно. По-моему, самое простое и эффективное тестирование и написание кода под BotUI выглядит следующим образом:
  • Продумываем в голове / пишем на листочке все переменные, которые мы хотим передавать из настроек в шаблон.
  • Открываем BotUI, закидываем все нужные элементы, согласно продуманным переменным.
  • Настраиваем размеры, положение, пишем вспомогательные тексты (описание и хелп).
  • А вот тут начинается самое интересное: открываем код получившегося шаблона, копируем его и вставляем в пустой созданный *.html файл (в utf-8!).
  • Открываем созданный *.html файл в редакторе кода (Notepad++ / SublimeText или другой) + браузере (лучше в FireFox, т.к. я подозреваю, что в ZP всё выполняется именно в нём).
  • Открываем в браузере "Инструменты разработчика" (Ctrl+Shift+I), пишем обработчики jQuery в редакторе кода, обновляем страницу в браузере и смотрим во вкладке "Консоль", чтоб не появилось каких-то ошибок (если появляются - исправляем свой код).
  • Делаем все нужные эффекты и взаимодействия с элементами, тестируем, копируем код из обычного редактора обратно в окно редактора BotUI в ProjectMaker.
  • Всё! Мы прекрасны, а наш шаблон ещё прекраснее!)
  • Суть этого списка простыми словами : гораздо проще и удобнее тестировать html в обычном браузере, а также смотреть какие ошибки там возникают при написании js. Во встроенном редакторе в BotUI можно только чуть-чуть подправить код, постоянно что-то в нём редактировать - не очень удобная затея.

    От простого к сложному, а затем снова к простому ​


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

    При добавлении любого элемента (кнопка, ввод текста, выбор вариантов) в интерфейс - добавляется сам элемент в html представлении и его родительская обёртка , тег div. У тега div всегда присутствует атрибут id, через который можно обращаться к элементу (или самому родительскому тегу div), а также можно задать уникальный идентификатор для самого элемента, используя правую панель "Свойства" -> вкладка "Дополнительно" -> Прочее -> ElementId. Это важное вступление, нужно раз и навсегда запомнить этот способ как обратиться к определенному элементу или его базовому/родительскому тегу.

    Ещё одно очень важное отступление - частичное повторение из предыдущих абзацев. Следует запомнить, что весь код, который вы пишите на jQuery необходимо размещать ниже чем загрузка самой библиотеки jquery, но идеальным вариантом будет размещение кода перед закрывающимся тегом . К тому же, стоит отметить, что jQuery код необходимо оборачивать специальной конструкцией, которая предотвратит выполнение кода, пока страница не загрузилась до конца (в нашем случае не критично, но лучше придерживаться этого стандарта). Выглядит это следующим образом:
    Скрытие/отображение элементов

    Скрыть или отобразить какой-то элемент с помощью jQuery можно как минимум 3 способами:

  • Используя метод .css() :

    Code (javascript):

    $("#element1" ) .css ("display" , "none" ) ; // скроет тег с id element1

    $("#element1" ) .css ("display" , "block" ) ;

    На самом деле - это не очень корректный способ, т.к. придется самостоятельно дописывать получение значения и проверку текущего состояния. Лучше использовать этот метод, чтобы задать изменение какого-то css.

  • Используя методы .hide() и .show() :

    Code (javascript):

    $("#element1" ) .hide () ; // скроет тег с id element1

    $("#element1" ) .show () ; // отобразит тег с id element1

    Опять же - не всегда это решение является корректным, но уже гораздо лучше первого и используются по своему прямому назначению.

  • И последний, самый часто используемый метод .toggle() :

    Code (javascript):

    $("#element1" ) .toggle () ;

    // получит текущее состояние тега с id=element1 и скроет его, если он видим или наоборот отобразит, если он скрыт

    В основном, такой подход используется для того, чтобы при каком-то событии скрыть или отобразить элемент. Например, при клике на кнопку - скрыть какие-то данные, с которыми она связана, а при повторном клике (если не прописано другой логики) - снова отобразить скрытые данные.

  • Детальное рассмотрение всех методов представлено в шаблоне show_hide.xmlz , но для начала и общего понимания как это всё работает - часть кода (первый пример с .css() ) с комментариями дублирую тут:

    Code (javascript):

    // добавляем обработчик (при действии click) для кнопки "скрыть", используя её id="btn_css1"

    $("#btn_css1" ) .on ("click" , function () {

    $("#90" ) .css ("display" , "none" ) ; // скрываем текстовое поле через родительский тег c id="90"

    } ) ;

    Вот так выглядит интерфейс этого шаблона:


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

    Получение и изменение данных элемента

    В jQuery есть несколько методов для работы с данными элементов, но все они имеют значительные отличия друг от друга:

  • Метод .val() - служит для получения и изменения данных большинства элементов форм (input, select, textarea и других). Если выполнить его без аргументов, то мы получим значение указанного DOM-элемента, а если с аргументом - то соответственно изменим его значение.
  • Метод .text() - предназначен для получения и изменения текстового представления содержимого тега, к которому он применяется (аналогичен знакомому нам innerText ). То есть из кода:
    При вызове данного метода на самом верхнем DOM-элементе:
    innerHtml ). Он точно также может и записать данные в html-представлении внутри тега.
  • Последний рассматриваемый пример, который немного не похож на два предыдущих - это событие .change() - оно нужно для отслеживания изменений в значении тега, для которого оно применено.
    Пример, который объясняет суть этого события: если применить событие .change() на тег select , то при изменении значения - мы получим это значение внутри переданной анонимной функции, т.е. отработает событие и далее мы можем в зависимости от выбранного пользователем элемента - строить свою логику. Да, немного сложно, но если посмотрите в последний пример в шаблоне, то сразу станет ясно о чем идет речь
  • Пример взаимодействия с этими методами сделан в шаблоне get_set.xmlz , а выглядит это следующим образом:


    Визуальные эффекты

    Визуальные эффекты - неотъемлемая часть красивого оформления, поэтому манипуляции с ними в jQuery сделаны максимально просто и удобно. Для работы с анимацией и эффектами обычно используют следующие методы:

  • Метод .fadeIn() - анимировано отображает невидимый элемент, делая его видимым, плавно увеличивая уровень непрозрачности, используя эффект проявления. В первом аргументе можно передать скорость появления элемента в миллисекундах.
  • Метод .fadeOut() - анимировано скрывает видимый элемент, делая его невидимым, плавно уменьшая уровень прозрачности, используя эффект растворения. Также в первом аргументе можно передать скорость скрытия в миллисекундах.
  • Метод .animate() - самый часто используемый способ сделать любую анимацию, основанную на CSS. Обязательно в качестве первого аргумента нужно передать объект с CSS-свойствами, с помощью которых будет происходить анимация, но также можно задать длительность анимации в миллисекундах, используя второй необязательный аргумент.
  • Пример всех методов и некоторые красивые эффекты, создаваемые с помощью библиотеки animate.css (не рассматриваю её полноценно в контексте статьи, но решил использовать в качестве примера для облегчения поисков красивых эффектов) сделаны в шаблоне effects.xmlz . Посмотреть как это выглядит можно на следующем изображении:
    Внимание! Эффекты, используемые в animate.css почему-то отказались работать в ZennoPoster, хотя в ProjectMaker работали, поэтому изображение оттуда. Будем ждать, когда это исправят.

    Послесловие aka выводы ​


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

    В данной статье я рассмотрел самый минимум из того, что теперь можно делать, поэтому вашим лучшим другом должна стать официальная документация - в ней рассмотрены все методы и события, а также добавлено множество примеров. Но если вам сложно начинать, например, по причине не знания английского, то стоит обратить внимание на учебники и статьи на русском, что я приводил в начале статьи. В целом, при знании HTML/CSS и хотя бы чуть-чуть javascript - библиотека jQuery не такая уж и сложная, если четко понимать что нужно сделать, тогда и решение будет где-то на поверхности, ну и гуглить никто не запрещал В сети находится огромное количество примеров и рассмотрено множество ситуаций, которые могут у вас возникнуть в ходе работы. Если искать решение, то оно всегда будет найдено!

    Спасибо, что дочитали до конца, надеюсь вам было интересно и вы узнали что-то новое для себя.
    Мне будет приятно, если эта публикация в первую очередь принесет пользу для камрадов, а уж конкурс - дело десятое

    Мы говорили о правилах создания чистых и красивых интерфейсов.

    Вот эти правила:

  • Свет падает сверху (Часть 1).
  • Сначала черное и белое (Часть 1).
  • Увеличьте белое пространство (Часть 1).
  • Научитесь накладывать текст на изображения.
  • Научитесь выделять и утапливать текст.
  • Используйте только хорошие шрифты.
  • Крадите как художник.
  • Правило № 4: Научитесь накладывать текст на изображения

    Есть всего лишь несколько надёжных способов красиво наложить текст на изображение. Я расскажу вам пять и ещё один в качестве бонуса.

    Если вы хотите быть хорошим дизайнером интерфейсов, вам нужно научиться накладывать текст на изображения так, чтобы это выглядело красиво. Это то, что умеет делать каждый хороший дизайнер интерфейсов, и не умеет плохой. Так что после прочтения этой статьи у вас уже будет преимущество!

    Метод № 0: Наложение текста напрямую на фотографию

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

    Чёрный фильтр самый простой и универсальный, но вы также можете использовать и цветные фильтры.

    Метод № 2: Текст-на-фоне

    Это ещё один простой и надёжный способ. Начертите слегка прозрачный чёрный прямоугольник и расположите на нём белый текст. Если прямоугольник будет достаточно тёмным, то снизу у вас может быть практически любая фотография и текст всё равно будет хорошо читаться.

    Концепт приложения для iPhone от Miguel Oliva Marquez

    Здесь также можно использовать цвет, но в пределах разумного.

    Концепт в розовом цвете от Mark Conlan

    Метод № 3: Размойте изображение

    Как ни странно, хороший способ сделать текст читабельным - это размыть часть картинки.

    В Snapguide размыта обширная часть картинки. Заметьте, что она также затемнена

    Такой способ стал особенно популярен после выхода iOS 7, хотя широко использовался ещё в Vista.

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

    Teehan + Lax

    Я имею в виду, просто попытайтесь прочесть подзаголовок внизу.

    Метод № 4: Затемните низ

    В этом варианте изображение слегка затемняется к низу, и сверху располагается белый текст. Это очень искусный метод, и я не знаю, использовал ли его кто-то до Medium, но я увидел его именно там.

    Случайному наблюдателю может показаться, что в коллекциях Medium белый текст нанесён напрямую на изображение. Но это не так! Здесь есть едва заметный градиент чёрного цвета с середины изображения к низу (с прозрачностью от 0 до примерно 20 %).

    Его не так просто заметить, но он определённо там есть, и это совершенно точно улучшает читаемость текста.

    Заметьте, что Medium использует небольшую тень в тексте при наложении на миниатюры коллекций, что ещё больше повышает читаемость. В конечном итоге, Medium может наложить любой текст на любое изображение и получить хороший результат.

    Вы спросите, почему изображение нужно затемнять книзу? Ответ на этот вопрос читайте в Правиле № 1 - свет всегда падает сверху. Чтобы выглядеть наиболее естественно для наших глаз, изображение должно быть немного темнее книзу, так же как и любой другой предмет, который мы видим.

    Ещё один продвинутый способ: затемнение и размытие.

    Бонус - Метод маскировки

    Заголовок «Material Design» выделен множеством способов. Он большой, очень контрастный и выделен болдом.

    Текст в футере, наоборот, утоплен. Он маленький, неконтрастный и обычного начертания.

    А сейчас самое важное.

    Название страниц - это единственный элемент на сайте, который нужно только выделять. Остальные элементы нужно выделять и утапливать одновременно.

    Если вам нужно выделить какой-то элемент, используйте одновременно способы для выделения и утапливания текста. Это поможет не перегружать интерфейс, но в то же время придаст разным элементам тот визуальный вес, который им необходим.

    Баланс визуальных стилей

    Сайт Blu Homes - пример безукоризненного дизайна. Там есть большой заголовок, но слово, на котором делается акцент, написано строчными буквами - слишком много выделений выглядело бы избыточно.

    Цифры привлекают к себе внимание с помощью размера, цвета и расположения - но заметьте, что они одновременно утоплены с помощью более тонкого шрифта и менее контрастного цвета, чем тёмно-серый.

    Подписи под цифрами, несмотря на то что они серые и маленькие, набраны прописными буквами и более жирным шрифтом.

    Всё дело в балансе.

    Contents Magazine - хороший пример выделения и утапливания текста.

    • Название статей - это единственный элемент на странице, который набран не курсивом. В этом случае, именно отсутствие курсива привлекает внимание (особенно в комбинации с жирным начертанием).
    • Имя автора выделено болдом - в отличие от слова «by», набранного обычным шрифтом.
    • Маленькая, неконтрастная подпись «ALREADY OUT» никому не мешает. Но благодаря прописным буквам, щедрой разрядке и большим полям тут же привлекает внимание.
    Активные и выбранные элементы

    Выделение активных элементов - ещё более сложная задача.

    Обычно, если менять размер шрифта, его начертание или строчные буквы на прописные, то изменится площадь, которую занимает текст. А это может привести к непредвиденным результатам.

    Что же тогда делать?

    Можно использовать:

    • цвет текста;
    • цвет фона;
    • тени;
    • подчёркивание;
    • небольшую анимацию (подъём, опускание и так далее).

    Вот один проверенный способ: попробуйте сделать белые элементы цветными или цветные элементы белыми, но затемнив при этом фон.

    Выбранная иконка стала белой, но сохранила контраст по отношению к фону

    Вывод такой: научиться выделять текст очень сложно. Каждый раз, когда у меня что-то не получалось, я понимал, что мне нужно стать лучше. А чтобы стать лучше, нужно пробовать.

    Правило № 6: Используйте только хорошие шрифты

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

    Сайты с очень отличительным характером могут использовать отличительные шрифты. Но для большинство интерфейсов нужно что-то чистое и простое.

    Так что скачайте их прямо сейчас для вашего следующего проекта.

    Все скаченные вами шрифты можно найти в приложении Шрифты во вкладке Пользователь.

    Ubuntu

    Ubuntu имеет множество начертаний. Для некоторых приложений он слишком специфичен, для других - подходит идеально. Можно скачать на Google Fonts .

    Open Sans

    Open Sans - популярный шрифт, легко читается. Хорошо подходит для основного текста. Можно скачать на Google Fonts .

    Bebas Neue

    Bebas Neue отлично подходит для заголовков. Состоит только из прописных букв. Можно скачать на сайте Fontfabric и там же посмотреть примеры использования.

    Montserrat

    Montserrat доступен только в двух начертаниях, но этого достаточно. Этот шрифт - лучшая бесплатная альтернатива Gotham и Proxima Nova, но он далеко не так хорош, как они. Можно скачать на Google Fonts .

    Raleway

    Raleway подходит для заголовков, возможно, немного чересчур для основного текста (эти «w»!). Очень красиво выглядит начертание Ultralight (нет на картинке). Можно скачать на Google Fonts .

    Cabin

    Lato

    PT Sans

    Entypo Social

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

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

    Но где же искать эти примеры? Вот несколько сайтов, которые оказались для меня самыми полезными. В порядке убывания.

    1. Dribbble

    Это сайт-портфолио для дизайнеров, куда можно попасть только по приглашению. Здесь вы найдёте работы самого высокого качества. И практически любые примеры.

    Инструкция

    Проще всего создать интерфейс программы, воспользовавшись средой программирования от компании Borland. В зависимости от используемого языка, это может быть Borland C++ Builder или Borland Delphi. Обе среды программирования очень похожи и отличаются только используемым языком.

    Установите и запустите среду программирования. Откроется окно программы, в нем вы увидите серый прямоугольник. Это окно дизайнера форм, а проще заготовка интерфейса вашей будущей программы, она обозначена как Form1. Щелкнув на заголовке формы, вы можете в левой части программы, в окне инспектора объектов, задать ей нужное название. В данном случае вам надо будет вписать название программы в строку Caption.

    Определите размеры окна будущей программы, для этого просто растяните форму мышкой. Так как вы уже приступили к созданию интерфейса программы, значит, у вас продуман алгоритм ее работы и вы знаете, какие элементы должны входить в интерфейс. Например, вам нужна кнопка. В верхней части окна среды программирования найдите строку с визуальными компонентами, в ней выберите вкладку Standard. Найдите на ней изображение кнопки (на ней написано ОК) и просто перетащите мышкой на форму.

    Расположите кнопку в нужном месте формы. Измените, при необходимости, ее размер. Теперь дайте кнопке название – например, Open. Для этого щелкните кнопку мышкой и в окне инспектора объектов введите в строку Caption название кнопки – Open.

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

    Существует ряд компонентов, которые вы часто будете использовать, то есть перетаскивать на форму, но которые не будут отображаться в окне готовой запущенной программы. Например, перетащите из вкладки Dialogs компоненты Open Dialog и Save Dialog. Расположите их где-нибудь в нижней части окна – так, чтобы они не мешали. С помощью этих компонентов мы сможете реализовать процедуру открытия файлов и их сохранения. Подобных компонентов много, вы будете часто их использовать.

    После того, как интерфейс программы будет создан, вам останется наполнить его жизнью – то есть вписать в окно редактора кода нужные строчки. После этого интерфейс вашей программы начнет откликаться на действия пользователя. Более подробно о работе с программами от компании Borland вы сможете прочитать в соответствующей литературе.

  • Типографика
    • Перевод

    Обратите внимание на меню слева.

    Или посмотрите на заголовки списков. Между словом «PLAYLISTS» и его подчёркиванием расстояние в 15px. Это больше, чем высота заглавной буквы шрифта ! Я уже молчу о 25px между самим списками.

    В верхнем правом углу тоже достаточно пространства. Текст «Search all music» занимает 20 % высоты панели навигации. У иконок похожие пропорции.

    Даже такие интерфейсы, как форумы, могут выглядеть красивыми и простыми благодаря белому пространству.

    Или Википедия.

    Конечно, можно поспорить, что такому редизайну не хватает функциональности. Но это хорошее место для старта.

    Добавьте белое пространство между линиями.
    Добавьте белое пространство между элементами.
    Добавьте белое пространство между группами элементов.
    Анализируйте, что работает, а что нет .

    В следующей части я расскажу об остальных 4 правилах красивых интерфейсов:

  • Как накладывать текст на картинки.
  • Как выделять и утапливать текст.
  • Используйте только хорошие шрифты.
  • Крадите как художник
  • Теги:

    • веб-дизайн
    • дизайн интерфейсов
    Добавить метки

    © 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows