Advertisement
  1. Web Design
  2. HTML/CSS
  3. Bootstrap

Pure.css предлагает интригующую альтернативу Bootstrap

Scroll to top
Read Time: 8 min

() translation by (you can also view the original English article)

Final product imageFinal product imageFinal product image
What You'll Be Creating

Что такое Pure.css?

В то время как Bootstrap берет на себя огромное количество веб-сайтов, это может принести небольшую нагрузку на сайты, которые могут не понадобиться для вашего следующего проекта. Pure.css - это фреймворк от Yahoo; он предлагает минималистскую, хорошо документированную и гибкую альтернативу.

В этом уроке я расскажу вам о Pure, «наборе небольших, респосив модулей CSS, которые вы можете использовать в каждом веб-проекте». Мы рассмотрим набор функций и преимущества использования Pure, а затем рассмотрим некоторые основные примеры использования.

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

Выбор платформы

Pure предлагает все общие функции, которые вам нужны в стандартном фреймворке веб-дизайна. Итак, либо вы создаете тему для WordPress или собственный веб-сайт, Pure может быть хорошим вариантом.

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

Краткое резюме

Вот краткий обзор преимуществ и особенностей Pure. Он обеспечивает:

  • настраиваемая, responsive сетка
  • встроенные вертикальные и горизонтальные меню, включая выпадающие меню
  • кнопки, которые работают с элементами <a> и <button>
  • гибкие выравнивания форм
  • общие стили таблиц
  • чистый, минималистский вид, который можно легко расширить

Тем не менее, наиболее впечатляюще, что Pure.css является очень маленьким, всего 4.5KB minified + gzipped. Вот сколько места занимают различные компоненты Pure в вашем production окружении:

PureCSS Module SizesPureCSS Module SizesPureCSS Module Sizes

Pure также хорошо протестирован и работает в IE 8+, Firefox, Chrome, Safari, iOS 6-8 и Android 4.x.

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

Pure построен на Normalize.css, который стандартизирует производительность фреймворка в браузерах. Normalize обеспечивает сброс CSS по умолчанию, который:

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

Начало работы с Pure

Сайт Pure построен на собственном фреймворке, поэтому его минималистский, хорошо разработанный код приводит к простому ориентируемому и удобному руководству. Вот пример левого меню Pure в действии:

Purecss - Get StartedPurecss - Get StartedPurecss - Get Started

Вы можете добавить Pure на свою страницу через бесплатный CDN Yahoo. Просто добавьте следующий элемент <link> в <head> вашей страницы, перед таблицами стилей вашего проекта:

1
<link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.6.0/pure-min.css">

Чтобы инициализировать гибкую ширину вашего веб-сайта, установите метатег для окна просмотра на ширину вашего устройства:

1
<meta name="viewport" content="width=device-width, initial-scale=1">

Макеты

На странице Макетов Pure предлагает выборку загрузок для разных страниц примеров для общих приложений:

PureCSS Sample layoutsPureCSS Sample layoutsPureCSS Sample layouts

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

  • Блог
  • Эл. адрес
  • Фотогалерея
  • Целевая страница
  • Ценовая галерея
  • Отзывчивое боковое меню
  • Отзывчивое горизонтально-вертикальное меню
  • Отзывчивое горизонтально-прокручиваемое меню

Pure Base

На странице Base приведен краткий справочный материал о фундаменте под фреймворком Pure, в основном это Normalize.css:

Normalize.css - это небольшой CSS-файл, который обеспечивает лучшую согласованность между браузерами при стандартном стиле HTML-элементов. Это современная, готовая HTML5, альтернатива традиционному сбросу CSS.

Вы также можете загрузить Normalize отдельно с помощью CDN Yahoo для самостоятельного использования:

1
<link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.6.0/base-min.css">

И есть другие небольшие базовые функции, такие как классы, которые позволяют Pure загружать изображения с помощью viewport:

1
<img class="pure-img" src="...">

Но теперь давайте посмотрим на некоторые из примеров макетов Pure.

Сетки

Сетки - ключевой аспект макетов веб-сайта, который Pure делает довольно простым. Вот краткий пример сетки Pure с четырьмя столбцами на рабочем столе:

PureCSS Grids Full WidthPureCSS Grids Full WidthPureCSS Grids Full Width

И вот, как он уменьшает размер окна просмотра в размере пополам:

PureCSS Grids Half WidthPureCSS Grids Half WidthPureCSS Grids Half Width

И, наконец, один столбец на смартфоне:

PureCSS Grids Quarter WidthPureCSS Grids Quarter WidthPureCSS Grids Quarter Width

Чистые гриды состоят из двух типов классов: сеток и единиц. Детальные элементы разделов сетки должны быть делениями блоков. Ваш контент попадает внутрь разделов. Классы единиц называются для представления их ширины. Например, pure-u-1-4 имеет ширину 25%.

Вот код для responsive четвертого выше:

1
<div class="grids-example">
2
    <div class="pure-g">
3
    <div class="pure-u-1 pure-u-md-1-2 pure-u-lg-1-4">
4
        <div class="l-box">
5
            <h3>Lorem Ipsum</h3>
6
            <p>
7
                Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam.
8
            </p>
9
        </div>
10
    </div>
11
12
    <div class="pure-u-1 pure-u-md-1-2 pure-u-lg-1-4">
13
        <div class="l-box">
14
            <h3>Dolor Sit Amet</h3>
15
            <p>
16
                Quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse.
17
            </p>
18
        </div>
19
    </div>
20
21
    <div class="pure-u-1 pure-u-md-1-2 pure-u-lg-1-4">
22
        <div class="l-box">
23
            <h3>Proident laborum</h3>
24
            <p>
25
                In culpa qui officia deserunt mollit anim id est laborum. incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco.
26
            </p>
27
        </div>
28
    </div>
29
30
    <div class="pure-u-1 pure-u-md-1-2 pure-u-lg-1-4">
31
        <div class="l-box">
32
            <h3>Praesent consectetur</h3>
33
            <p>
34
               Integer vitae lectus accumsan, egestas dui eget, ullamcorper urn. In feugiat tortor at turpis rhoncus tincidunt. Duis sed porttitor ante, eget venenatis lectus.
35
            </p>
36
        </div>
37
    </div>

Как вы можете видеть выше, <div class = "pure-g"> представляет собой внешний класс сетки. Затем <div class = "pure-u-1 pure-u-md-1-2 pure-u-lg-1-4"> указывает браузеру показывать один столбец для минимальных видовых экранов, половины столбцов для среды и четверть столбцов для большой ширины.

Здесь вы можете узнать больше о Pure Grids.

Формы

PureCSS Example Multi Column FormPureCSS Example Multi Column FormPureCSS Example Multi Column Form

Pure поддерживает выравнивание полей ввода в формах и создание специализированных полей, таких как:

  • Встроенные формы
  • Сложенные формы
  • Двухколонные формы
  • Много-колонные формы (показано выше)
  • Сгруппированные инпуты
  • Обязательные инпуты
  • Отключенные инпуты
  • Инпуты только для чтения
  • Закругленные инпуты
  • Флажки и радио

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

PureCSS Example Two Column Aligned FormPureCSS Example Two Column Aligned FormPureCSS Example Two Column Aligned Form

Путем использования класса pure-form-aligned вместе с pure-control-group(s), Pure обеспечивает правильное расположение каждого набора полей, как показано выше.

1
form class="pure-form pure-form-aligned">
2
    <fieldset>
3
        <div class="pure-control-group">
4
            <label for="name">Username</label>
5
            <input id="name" type="text" placeholder="Username">
6
        </div>
7
8
        <div class="pure-control-group">
9
            <label for="password">Password</label>
10
            <input id="password" type="password" placeholder="Password">
11
        </div>
12
13
        <div class="pure-control-group">
14
            <label for="email">Email Address</label>
15
            <input id="email" type="email" placeholder="Email Address">
16
        </div>
17
18
        <div class="pure-control-group">
19
            <label for="foo">Supercalifragilistic Label</label>
20
            <input id="foo" type="text" placeholder="Enter something here...">
21
        </div>
22
23
        <div class="pure-controls">
24
            <label for="cb" class="pure-checkbox">
25
                <input id="cb" type="checkbox"> I've read the terms and conditions
26
            </label>
27
28
            <button type="submit" class="pure-button pure-button-primary">Submit</button>
29
        </div>
30
    </fieldset>
31
</form>

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

Таблицы

Pure также упрощает создание и форматирование таблиц. Вот пример горизонтально полосатой таблицы:

PureCSS Example Horizontal Striped TabledPureCSS Example Horizontal Striped TabledPureCSS Example Horizontal Striped Tabled

Вы можете увидеть таблицу выше, закодированную, просто добавив класс pure-table-odd попеременно через ваш код, чтобы изменить чередование:

1
<table class="pure-table">
2
    <thead>
3
        <tr>
4
            <th>#</th>
5
            <th>Make</th>
6
            <th>Model</th>
7
            <th>Year</th>
8
        </tr>
9
    </thead>
10
11
    <tbody>
12
        <tr class="pure-table-odd">
13
            <td>1</td>
14
            <td>Honda</td>
15
            <td>Accord</td>
16
            <td>2009</td>
17
        </tr>
18
19
        <tr>
20
            <td>2</td>
21
            <td>Toyota</td>
22
            <td>Camry</td>
23
            <td>2012</td>
24
        </tr>
25
26
        <tr class="pure-table-odd">
27
            <td>3</td>
28
            <td>Hyundai</td>
29
            <td>Elantra</td>
30
            <td>2010</td>
31
        </tr>
32
33
        <tr>
34
            <td>4</td>
35
            <td>Ford</td>
36
            <td>Focus</td>
37
            <td>2008</td>
38
        </tr>
39
40
        <tr class="pure-table-odd">
41
            <td>5</td>
42
            <td>Nissan</td>
43
            <td>Sentra</td>
44
            <td>2011</td>
45
        </tr>
46
47
        <tr>
48
            <td>6</td>
49
            <td>BMW</td>
50
            <td>M3</td>
51
            <td>2009</td>
52
        </tr>
53
54
        <tr class="pure-table-odd">
55
            <td>7</td>
56
            <td>Honda</td>
57
            <td>Civic</td>
58
            <td>2010</td>
59
        </tr>
60
61
        <tr>
62
            <td>8</td>
63
            <td>Kia</td>
64
            <td>Soul</td>
65
            <td>2010</td>
66
        </tr>
67
    </tbody>
68
</table>

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

Меню

Меню в Pure также легко создать, оно включает в себя:

  • Вертикальное меню
  • Горизонтальное меню
  • Выбранные и отключенные элементы
  • Списки
  • Вертикальное меню с подменю
  • Прокручиваемое горизонтальное меню
  • Прокручиваемое вертикальное меню
  • Отзывчивое вертикальное меню
  • Отзывчивое горизонтально-прокручиваемое меню
  • Отзывчивое горизонтально-вертикальное меню

Все меню показаны здесь. Вот как вы бы описали выпадающее меню:

PureCSS Example Dropdown MenuPureCSS Example Dropdown MenuPureCSS Example Dropdown Menu

В принципе, это просто pure-menu-horizontal с pure-menu-list и pure-menu-item pure-menu-has-children pure-menu-allow-hover и затем набор дочерних элементов:

1
<div class="pure-menu pure-menu-horizontal">
2
    <ul class="pure-menu-list">
3
        <li class="pure-menu-item pure-menu-selected"><a href="#" class="pure-menu-link">Home</a></li>
4
        <li class="pure-menu-item pure-menu-has-children pure-menu-allow-hover">
5
            <a href="#" id="menuLink1" class="pure-menu-link">Contact</a>
6
            <ul class="pure-menu-children">
7
                <li class="pure-menu-item"><a href="#" class="pure-menu-link">Email</a></li>
8
                <li class="pure-menu-item"><a href="#" class="pure-menu-link">Twitter</a></li>
9
                <li class="pure-menu-item"><a href="#" class="pure-menu-link">Tumblr Blog</a></li>
10
            </ul>
11
        </li>
12
    </ul>
13
</div>

Pure предоставляет пример JavaScript для реализации дополнительных возможностей доступа в ваши меню.

Идем дальше

На веб-сайте Pure есть несколько отличных руководств по фреймворку:

И вы можете изучить комбинацию Pure с Bootstrap и JavaScript. Если вы хотите начать с небольшого размера и минималистского стиля Pure, вы все равно можете использовать различные функции Bootstrap, загружая только то, что вам нужно.

Вот пример модального диалога Bootstrap поверх Pure, который вы можете увидеть на странице расширения Pure:

PureCSS Using Pure with Elements of BootstrapPureCSS Using Pure with Elements of BootstrapPureCSS Using Pure with Elements of Bootstrap

В заключение

Bootstrap становится IBM веб-фреймворками. Он отзывчивый, это стандарт, и вы не можете уволиться за его выбор (по недавнему контракту нам действительно нужно было приступить к разработке темы для неправильной реализации Bootstrap). Но, если вы хотите что-то меньшее, более быстрое и простое, то обратите внимание на Pure.css.

Если вы попробуете, пожалуйста, сообщите мне о вашем опыте в комментариях ниже. Вы также можете связаться со мной в Twitter @reifman. И вы также можете просмотреть мою страницу инструктора Envato Tuts + для прочтения моих других учебных пособий.

Ссылки по теме

Advertisement
Did you find this post useful?
Want a weekly email summary?
Subscribe below and we’ll send you a weekly email summary of all new Web Design tutorials. Never miss out on learning about the next big thing.
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.