WebP вместо изображений в браузерах где он поддерживается
Whois, как получить данные IP-адреса и домена в PHP
XML для Яндекс. Недвижимости на PHP
XML-файл объявлений для Авито
ZIP в PHP (ZipArchive)
Автозагрузка классов
Автоматическая установка временной зоны у пользователя
Автоматический контраст цвета шрифта к фону на PHP
Автоматическое заполнение поля «город» в форме по IP адресу
Автоматическое оглавление для статьи
Автоматическое сжатие и оптимизация картинок на сайте
Авторизация на сайте через Facebook
Авторизация на сайте через Яндекс
Авторизация через GitHub
Алфавитный указатель на PHP
Бот Телеграм на PHP
Время жизни сессии в PHP
Время и память выполнения скрипта PHP
Вставить баннер в центр статьи
Вставка и добавление в текст регулярными выражениями
Вход на сайт через Вконтакте
Вход через Google
Вывести массив в виде PHP кода
Вывод HTML-таблицы с функцией сортировки на PHP + MySQL
Вывод PHP-массива колонками
Вывод даты с русскими месяцами
Вывод списка по алфавиту
Выпадающий список с файлами на хостинге
Вычисление процентов в PHP
Генерация QR-кода в PHP
Генерация XML файла для Google Merchant
Генерация YML файл Яндекс Маркета на PHP
Генерация всех комбинаций из набора символов
Генерация паролей в PHP
Генерация превьюшек изображений на лету
Генерация случайных буквенно-цифровых кодов в PHP
Генерация счета на оплату PDF PHP
Генерация токенов в PHP
Дополнительные функции mb_string
Загрузка изображений с превью AJAX + PHP + MySQL
Загрузка файлов на сервер PHP
Загрузка файлов через AJAX с помощью jQuery Form Plugin
Замена кавычек на «ёлочки» в PHP
Замена раскладки на PHP
Замена регистра в строках PHP
Замена символов по регулярному выражению
Запись в лог-файл в PHP
Запись и чтение файлов в PHP
Заполненные PHP-массивы для дат
Защита от нелегального зеркала сайта
Извлечение данных с помощью регулярных выражений PHP
Изображения WebP в GD PHP
Интеграция с платежной системой PayKeeper в PHP
Исключения PHP (Try и Catch)
Использование API Геокодера в PHP для получения координат
Использование API Яндекс Диска на PHP
Использование циклов в PHP
Как включить вывод символов эмодзи на сайте
Как вывести PHP массив
Как вывести метки на Яндекс. Картах из MySQL+PHP
Как выделить фразы в тексте
Как добавить UTM-метки в заявки с сайта
Как дописать стили в атрибут style тегов HTML через PHP
Как интегрировать ReCAPTCHA на сайт
Как найти новые координаты точки при повороте изображения PHP-функцией imagerotate()
Как найти одинаковые файлы с разными именами в PHP
Как настроить Last-Modified
Как получить IP посетителя в PHP
Как получить все дни между датами в PHP
Как получить текущий URL в PHP?
Как преобразовать текст из textarea в параграфы HTML
Как прочитать SSL сертификат из PHP
Как сделать редирект PHP
Как сформировать большой файл для маркета
Как узнать, что пришел запрос через AJAX
Календарь на PHP
Кнопка «Показать еще»
Конвертация байтов в килобайты и мегабайты
Кэширование контента в файлы PHP
Мануал по созданию и форматированию excel файлов в PHPExcel
Массив $_FILES
Массив $_SERVER
Метрика API
Многоуровневый select из базы данных
Обзор PHP расширений для чтения файлов Excel
Обновление таблицы БД из XML файлов
Обработка и вывод рейтинга в PHP
Обработка изображений в PHP
Обрезка текста для анонса
Округление чисел в PHP
Операции с датами и временем Unixtime в PHP
Оплата заказов на сайте через Робокассу
Определение местоположения посетителя по IP-адресу в PHP
Определение мобильного устройства в PHP
Определение основного цвета изображения в PHP
Определение поисковых роботов
Отдача файлов на скачивание PHP
Отключить кэширование PHP
Отправка sms через «SMS Aero» в PHP
Отправка и прием данных 1C на PHP-сайте
Отправка писем через PHPMailer
Отправка писем через SMTP в PHPMailer
Отправка письма с вложением
Отправка сообщения с изображением в Twitter через PHP
Отправка формы через PHP CURL
Отслеживание окончания доменов и SSL-сертификатов
Очистка данных из форм в PHP
Перекодировка текста UTF-8 и WINDOWS-1251
Переносы строк и тег BR в PHP
Платежи на сайте через IntellectMoney PHP
Поворот изображения по двум точкам на PHP GD + jQuery UI Droppable
Подгрузка контента при прокрутке (бесконечная лента)
Подключение к платежной системе Сбербанка
Поиск ближайших объектов в БД по координатам
Поиск на сайте внешних ссылок и их анкоров
Поиск похожих текстов в базе данных MySQL + PHP
Поиск телефона в базе данных MySQL
Поиск файлов в PHP
Поле для выбора количества товаров
Получение котировок PHP
Получить DNS записи домена в PHP
Получить GET-параметр из URL
Получить фото из Instagram без API
Постраничный вывод и базы данных
Постраничный вывод массива
Прайс-лист для Яндекс карт и справочника
Преобразование CSV в XLSX на PHP
Преобразование punycode в PHP
Преобразование изображения в Base64 на PHP
Преобразование строк в массив PHP
Преобразование цветов в PHP
Прием платежей на сайте через интернет-эквайринг Тинькофф
Прием платежей на сайте через Юкассу
Пример парсинга html-страницы на phpQuery
Примеры использования cURL в PHP
Примеры использования PDO MySQL
Проблема PHP DOMDocument – русские буквы заменяются на мнемоники
Проверка данных регулярными выражениями
Публикация записей на стену сообщества VK
Публикация на страницу Facebook через PHP
Работа с API Instagram
Работа с FTP в PHP
Работа с JSON в PHP
Работа с MIME-типами в PHP
Работа с директориями в PHP
Работа с именами файлов в PHP
Работа с массивами PHP – создание, наполнение, удаление
Работа с ценами PHP
Работа с числами в PHP
Работа со строками в PHP
Размер файлов и директорий в PHP
Раскрывающийся многоуровневый список
Расчёт прибыльности за одну единицу товара
Расчёт средней закупочной или продажной цены
Регулярные выражения для замены на теги
Регулярные выражения для удаления тегов
Рисование точки в PHP GD
Секунды в минуты, часы, дни
Склонение слов после числительных в PHP
Создание товарной накладной в PHPExcel
Сортировка массива по количеству символов
Сортировка массивов
Сохранить все изображения со страницы сайта
Сохранить файл в UTF-8 без BOM
Сумма прописью PHP
Счетчик просмотров страниц с графиком
Транслитерация по ГОСТ
Удаление регулярными выражениями в PHP
Управление выводом ошибок PHP
Установка лимитов PHP на обработку данных из форм
Установка локали UTF-8 в PHP
Фильтрация IP-адресов
Форматирование телефонных номеров
Формирование файла sitemap. xml
Хеширование строк в PHP
Чтение Google таблиц в PHP
Чтение XML файла Яндекс Маркета в PHP
Чтение почты через IMAP в PHP
Шаблонизатор Smarty
Шорткоды на регулярных выражениях
Яндекс.Доставка работа с API в PHP
HTML/CSS
Clearfix – отмена действия float
CSS @media для мобильных, планшетов и настольных компьютеров
CSS display table
CSS стили выделенного текста
CSS стили для placeholder
CSS фильтры
CSS-стили для списков dl, dt, dd
Favicon
Input type number
Manifest. json
Open Graph
Schema.org – пример разметки блога
Schema.org – пример разметки статьи
Select option с ссылками
SVG спрайты
Адаптивное выравнивание изображений на всю ширину браузера
Адаптивные блоки YouTube
Адаптивные плееры Youtube на десктопах и мобильных
Блоки со стрелками (часть 1)
Блоки со стрелками (часть 2)
Блокировка многократной отправки формы
Буквица CSS
Ведущие нули у ol
Верстка блока контактов с картой
Верстка рейтинга в виде звезд
Верстка списка с отточием
Вертикальное выравнивание в блоке (Flexbox)
Вертикальное выравнивание текста в блоке (child-helper)
Видео c YouTube в качестве фона сайта
Восстановление стилей текста после CSS reset
Выборка элементов в группе по псевдоклассам CSS
Выравнивание блока по центру родителя
Выравнивание блоков на всю ширину (justify)
Горизонтальное меню
Горизонтальное меню justify
Готовые CSS стили для таблиц
Добавление CSS стилей на страницу
Заголовок с горизонтальной линией посередине
Затемнение изображения и фона с помощью CSS
Изменение CSS-градиента в зависимости от положения курсора
Изменение размеров textarea и других элементов
Изменение цвета Яндекс карт
Информирование о использовании Сookie
Как вместить большие таблицы на страницы сайта
Как вывести штрих-код на сайте
Как загрузить содержимое файла в textarea
Как запретить выделение текста на сайте через CSS
Как ограничить ввод данных в текстовое поле
Как отключить автозаполнение сохранённого логина и пароля в форме
Как отключить тег br
Как сделать интерактивную схему на SVG + jQuery
Как сделать кривые границы блоков в CSS
Как сделать несколько фонов в background
Как сделать полосатую таблицу на HTML, CSS, JS, PHP
Как скрыть лишний текст в блоке
Колоночные шаблоны
Кривое подчёркивание ссылок в Google Chrome
Курсоры в CSS
Ленточки и флажки для блоков на HTML/CSS
Мета-тег viewport
Мета-теги HTML для Apple Safari
Мета-теги для Internet Explorer и Windows
Наведение курсора на ячейки, строки, колонки таблицы
Наложение градиента на изображение
Настройка плеера YouTube
Не стандартный СSS градиент
Номер телефона на сайте
Одна рамка между блоками
Описание мета-тегов
Оформление placeholder разными стилями
Перечёркивание текста по диагонали
Перечёркнутый текст
Печать HTML страниц
Плавное изменение background
Плавное увеличение фонового изображения
Подключение и выполнение JavaScript на странице
Подключение шрифтов в CSS
Подключение шрифтов с другого домена
Подчеркивание текста линией с градиентом
Показать/скрыть пароль
Поле для ввода показаний счетчика
Полупрозрачный градиент поверх картинки
После отправки формы сохранить позицию скролла
Прижать футер к низу окна браузера
Проверка орфографии в браузере
Прокрутка содержимого таблицы
Псевдоклассы nth-child и nth-last-child
Размеры Iframe
Разметка страниц для Twitter (Twitter Cards)
Рамка у отдельных ячеек таблицы
Рамки блоков с градиентом
Расстояние между буквами, строками, ширина табуляции в CSS
СSS стили для горизонтальных линий
Сборник CSS градиентов
Сборник анимированных градиентов
Сброс стилей (CSS reset)
Ссылки на мессенджеры с сайта
Стандартные и безопасные шрифты CSS
Стандарты HTML-документов
Стили для вложенных нумерованных списков ol
Стили для нумерованных списков ol
Стилизация Checkbox
Стилизация input file
Стилизация Radio Button
Стилизация кнопок CSS
Стиль и размер ReCaptcha
Текст в две колонки
Текст в три колонки
Текст с градиентом
Треугольники на CSS
Ускорение загрузки изображений и скриптов
Ускорение загрузки Яндекс Карт
Фильтр файлов по расширению у input file
Фильтры Instagram на CSS
Фон под текстом
Цветные SVG фильтры для элементов
Чекбокс в виде переключателя (switch toggle)
Чекбоксы в виде кнопок
Шахматное поле на CSS
Эффекты анимации на CSS animation keyframes
Яндекс карты не прямоугольной формы
JS/jQuery
htaccess
Bootstrap
Программы
Разное
Справочники
DNS-сервера хостингов
HTTP коды
Адреса phpMyAdmin хостингов
Адреса серверов POP3, IMAP и SMTP
Алфавиты в массивах и строках
База городов, регионов и федеральных округов РФ в MySQL
Виртуальные коды клавиш (Virtual-Key Codes)
Когда обновляются DNS сервера?
Коды валют
Коды клавиш клавиатуры для JQuery событий keydown, keyup и keypress
Коды языков ISO 639-1
Коды языков ISO 639-2
Настройки почты для домена Mail. ru, Яндекс, Gmail
Округа и районы Москвы в MySQL
Скан-коды клавиш клавиатуры (scan codes)
Спецсимволы и их мнемоники в HTML
Список MIME типов
Список городов РФ
Список регионов РФ
Список серверов Whois
Список станций Московского метрополитена в PHP-массиве и SQL
Список станций Петербургского метрополитена в PHP-массиве и SQL
Таблица Alt-кодов
Таблица HTML цветов
Таблица кодирования символов в URL
Таблица символов ASCII + Windows 1251
Таблица символов KOI8-R
Таблица символов эмодзи
Таблица цветов RAL classic
Флаги стран
Часовые пояса в PHP
Коды регионов ISO 3166-1 Alpha 2
Страница не найдена (ошибка 404)
PHP
array_unique для многомерных массивов
Contenteditable – текстовый редактор
CURL — если сервер отдает редирект
date() – форматирование даты PHP
PHP parse_url и её обратная функция
PHP класс для отправки E-mail
PHP класс для хлебных крошек
PHP массив в файл CSV
PHP паттерн Registry
PHP транслит
PHP функции для checked и selected
PHP функция serialize, возможные проблемы
PHP-класс для создания миниатюр изображений
PHP-класс обертка для PDO
POST-запрос через file_get_content()
RSS канал на PHP
RSS-файл для Яндекс Турбо-страниц
WebP вместо изображений в браузерах где он поддерживается
Whois, как получить данные IP-адреса и домена в PHP
XML для Яндекс. Недвижимости на PHP
XML-файл объявлений для Авито
ZIP в PHP (ZipArchive)
Автозагрузка классов
Автоматическая установка временной зоны у пользователя
Автоматический контраст цвета шрифта к фону на PHP
Автоматическое заполнение поля «город» в форме по IP адресу
Автоматическое оглавление для статьи
Автоматическое сжатие и оптимизация картинок на сайте
Авторизация на сайте через Facebook
Авторизация на сайте через Яндекс
Авторизация через GitHub
Алфавитный указатель на PHP
Бот Телеграм на PHP
Время жизни сессии в PHP
Время и память выполнения скрипта PHP
Вставить баннер в центр статьи
Вставка и добавление в текст регулярными выражениями
Вход на сайт через Вконтакте
Вход через Google
Вывести массив в виде PHP кода
Вывод HTML-таблицы с функцией сортировки на PHP + MySQL
Вывод PHP-массива колонками
Вывод даты с русскими месяцами
Вывод списка по алфавиту
Выпадающий список с файлами на хостинге
Вычисление процентов в PHP
Генерация QR-кода в PHP
Генерация XML файла для Google Merchant
Генерация YML файл Яндекс Маркета на PHP
Генерация всех комбинаций из набора символов
Генерация паролей в PHP
Генерация превьюшек изображений на лету
Генерация случайных буквенно-цифровых кодов в PHP
Генерация счета на оплату PDF PHP
Генерация токенов в PHP
Дополнительные функции mb_string
Загрузка изображений с превью AJAX + PHP + MySQL
Загрузка файлов на сервер PHP
Загрузка файлов через AJAX с помощью jQuery Form Plugin
Замена кавычек на «ёлочки» в PHP
Замена раскладки на PHP
Замена регистра в строках PHP
Замена символов по регулярному выражению
Запись в лог-файл в PHP
Запись и чтение файлов в PHP
Заполненные PHP-массивы для дат
Защита от нелегального зеркала сайта
Извлечение данных с помощью регулярных выражений PHP
Изображения WebP в GD PHP
Интеграция с платежной системой PayKeeper в PHP
Исключения PHP (Try и Catch)
Использование API Геокодера в PHP для получения координат
Использование API Яндекс Диска на PHP
Использование циклов в PHP
Как включить вывод символов эмодзи на сайте
Как вывести PHP массив
Как вывести метки на Яндекс. Картах из MySQL+PHP
Как выделить фразы в тексте
Как добавить UTM-метки в заявки с сайта
Как дописать стили в атрибут style тегов HTML через PHP
Как интегрировать ReCAPTCHA на сайт
Как найти новые координаты точки при повороте изображения PHP-функцией imagerotate()
Как найти одинаковые файлы с разными именами в PHP
Как настроить Last-Modified
Как получить IP посетителя в PHP
Как получить все дни между датами в PHP
Как получить текущий URL в PHP?
Как преобразовать текст из textarea в параграфы HTML
Как прочитать SSL сертификат из PHP
Как сделать редирект PHP
Как сформировать большой файл для маркета
Как узнать, что пришел запрос через AJAX
Календарь на PHP
Кнопка «Показать еще»
Конвертация байтов в килобайты и мегабайты
Кэширование контента в файлы PHP
Мануал по созданию и форматированию excel файлов в PHPExcel
Массив $_FILES
Массив $_SERVER
Метрика API
Многоуровневый select из базы данных
Обзор PHP расширений для чтения файлов Excel
Обновление таблицы БД из XML файлов
Обработка и вывод рейтинга в PHP
Обработка изображений в PHP
Обрезка текста для анонса
Округление чисел в PHP
Операции с датами и временем Unixtime в PHP
Оплата заказов на сайте через Робокассу
Определение местоположения посетителя по IP-адресу в PHP
Определение мобильного устройства в PHP
Определение основного цвета изображения в PHP
Определение поисковых роботов
Отдача файлов на скачивание PHP
Отключить кэширование PHP
Отправка sms через «SMS Aero» в PHP
Отправка и прием данных 1C на PHP-сайте
Отправка писем через PHPMailer
Отправка писем через SMTP в PHPMailer
Отправка письма с вложением
Отправка сообщения с изображением в Twitter через PHP
Отправка формы через PHP CURL
Отслеживание окончания доменов и SSL-сертификатов
Очистка данных из форм в PHP
Перекодировка текста UTF-8 и WINDOWS-1251
Переносы строк и тег BR в PHP
Платежи на сайте через IntellectMoney PHP
Поворот изображения по двум точкам на PHP GD + jQuery UI Droppable
Подгрузка контента при прокрутке (бесконечная лента)
Подключение к платежной системе Сбербанка
Поиск ближайших объектов в БД по координатам
Поиск на сайте внешних ссылок и их анкоров
Поиск похожих текстов в базе данных MySQL + PHP
Поиск телефона в базе данных MySQL
Поиск файлов в PHP
Поле для выбора количества товаров
Получение котировок PHP
Получить DNS записи домена в PHP
Получить GET-параметр из URL
Получить фото из Instagram без API
Постраничный вывод и базы данных
Постраничный вывод массива
Прайс-лист для Яндекс карт и справочника
Преобразование CSV в XLSX на PHP
Преобразование punycode в PHP
Преобразование изображения в Base64 на PHP
Преобразование строк в массив PHP
Преобразование цветов в PHP
Прием платежей на сайте через интернет-эквайринг Тинькофф
Прием платежей на сайте через Юкассу
Пример парсинга html-страницы на phpQuery
Примеры использования cURL в PHP
Примеры использования PDO MySQL
Проблема PHP DOMDocument – русские буквы заменяются на мнемоники
Проверка данных регулярными выражениями
Публикация записей на стену сообщества VK
Публикация на страницу Facebook через PHP
Работа с API Instagram
Работа с FTP в PHP
Работа с JSON в PHP
Работа с MIME-типами в PHP
Работа с директориями в PHP
Работа с именами файлов в PHP
Работа с массивами PHP – создание, наполнение, удаление
Работа с ценами PHP
Работа с числами в PHP
Работа со строками в PHP
Размер файлов и директорий в PHP
Раскрывающийся многоуровневый список
Расчёт прибыльности за одну единицу товара
Расчёт средней закупочной или продажной цены
Регулярные выражения для замены на теги
Регулярные выражения для удаления тегов
Рисование точки в PHP GD
Секунды в минуты, часы, дни
Склонение слов после числительных в PHP
Создание товарной накладной в PHPExcel
Сортировка массива по количеству символов
Сортировка массивов
Сохранить все изображения со страницы сайта
Сохранить файл в UTF-8 без BOM
Сумма прописью PHP
Счетчик просмотров страниц с графиком
Транслитерация по ГОСТ
Удаление регулярными выражениями в PHP
Управление выводом ошибок PHP
Установка лимитов PHP на обработку данных из форм
Установка локали UTF-8 в PHP
Фильтрация IP-адресов
Форматирование телефонных номеров
Формирование файла sitemap. xml
Хеширование строк в PHP
Чтение Google таблиц в PHP
Чтение XML файла Яндекс Маркета в PHP
Чтение почты через IMAP в PHP
Шаблонизатор Smarty
Шорткоды на регулярных выражениях
Яндекс.Доставка работа с API в PHP
HTML/CSS
Clearfix – отмена действия float
CSS @media для мобильных, планшетов и настольных компьютеров
CSS display table
CSS стили выделенного текста
CSS стили для placeholder
CSS фильтры
CSS-стили для списков dl, dt, dd
Favicon
Input type number
Manifest. json
Open Graph
Schema.org – пример разметки блога
Schema.org – пример разметки статьи
Select option с ссылками
SVG спрайты
Адаптивное выравнивание изображений на всю ширину браузера
Адаптивные блоки YouTube
Адаптивные плееры Youtube на десктопах и мобильных
Блоки со стрелками (часть 1)
Блоки со стрелками (часть 2)
Блокировка многократной отправки формы
Буквица CSS
Ведущие нули у ol
Верстка блока контактов с картой
Верстка рейтинга в виде звезд
Верстка списка с отточием
Вертикальное выравнивание в блоке (Flexbox)
Вертикальное выравнивание текста в блоке (child-helper)
Видео c YouTube в качестве фона сайта
Восстановление стилей текста после CSS reset
Выборка элементов в группе по псевдоклассам CSS
Выравнивание блока по центру родителя
Выравнивание блоков на всю ширину (justify)
Горизонтальное меню
Горизонтальное меню justify
Готовые CSS стили для таблиц
Добавление CSS стилей на страницу
Заголовок с горизонтальной линией посередине
Затемнение изображения и фона с помощью CSS
Изменение CSS-градиента в зависимости от положения курсора
Изменение размеров textarea и других элементов
Изменение цвета Яндекс карт
Информирование о использовании Сookie
Как вместить большие таблицы на страницы сайта
Как вывести штрих-код на сайте
Как загрузить содержимое файла в textarea
Как запретить выделение текста на сайте через CSS
Как ограничить ввод данных в текстовое поле
Как отключить автозаполнение сохранённого логина и пароля в форме
Как отключить тег br
Как сделать интерактивную схему на SVG + jQuery
Как сделать кривые границы блоков в CSS
Как сделать несколько фонов в background
Как сделать полосатую таблицу на HTML, CSS, JS, PHP
Как скрыть лишний текст в блоке
Колоночные шаблоны
Кривое подчёркивание ссылок в Google Chrome
Курсоры в CSS
Ленточки и флажки для блоков на HTML/CSS
Мета-тег viewport
Мета-теги HTML для Apple Safari
Мета-теги для Internet Explorer и Windows
Наведение курсора на ячейки, строки, колонки таблицы
Наложение градиента на изображение
Настройка плеера YouTube
Не стандартный СSS градиент
Номер телефона на сайте
Одна рамка между блоками
Описание мета-тегов
Оформление placeholder разными стилями
Перечёркивание текста по диагонали
Перечёркнутый текст
Печать HTML страниц
Плавное изменение background
Плавное увеличение фонового изображения
Подключение и выполнение JavaScript на странице
Подключение шрифтов в CSS
Подключение шрифтов с другого домена
Подчеркивание текста линией с градиентом
Показать/скрыть пароль
Поле для ввода показаний счетчика
Полупрозрачный градиент поверх картинки
После отправки формы сохранить позицию скролла
Прижать футер к низу окна браузера
Проверка орфографии в браузере
Прокрутка содержимого таблицы
Псевдоклассы nth-child и nth-last-child
Размеры Iframe
Разметка страниц для Twitter (Twitter Cards)
Рамка у отдельных ячеек таблицы
Рамки блоков с градиентом
Расстояние между буквами, строками, ширина табуляции в CSS
СSS стили для горизонтальных линий
Сборник CSS градиентов
Сборник анимированных градиентов
Сброс стилей (CSS reset)
Ссылки на мессенджеры с сайта
Стандартные и безопасные шрифты CSS
Стандарты HTML-документов
Стили для вложенных нумерованных списков ol
Стили для нумерованных списков ol
Стилизация Checkbox
Стилизация input file
Стилизация Radio Button
Стилизация кнопок CSS
Стиль и размер ReCaptcha
Текст в две колонки
Текст в три колонки
Текст с градиентом
Треугольники на CSS
Ускорение загрузки изображений и скриптов
Ускорение загрузки Яндекс Карт
Фильтр файлов по расширению у input file
Фильтры Instagram на CSS
Фон под текстом
Цветные SVG фильтры для элементов
Чекбокс в виде переключателя (switch toggle)
Чекбоксы в виде кнопок
Шахматное поле на CSS
Эффекты анимации на CSS animation keyframes
Яндекс карты не прямоугольной формы
JS/jQuery
htaccess
Bootstrap
Программы
Разное
Справочники
DNS-сервера хостингов
HTTP коды
Адреса phpMyAdmin хостингов
Адреса серверов POP3, IMAP и SMTP
Алфавиты в массивах и строках
База городов, регионов и федеральных округов РФ в MySQL
Виртуальные коды клавиш (Virtual-Key Codes)
Когда обновляются DNS сервера?
Коды валют
Коды клавиш клавиатуры для JQuery событий keydown, keyup и keypress
Коды языков ISO 639-1
Коды языков ISO 639-2
Настройки почты для домена Mail. ru, Яндекс, Gmail
Округа и районы Москвы в MySQL
Скан-коды клавиш клавиатуры (scan codes)
Спецсимволы и их мнемоники в HTML
Список MIME типов
Список городов РФ
Список регионов РФ
Список серверов Whois
Список станций Московского метрополитена в PHP-массиве и SQL
Список станций Петербургского метрополитена в PHP-массиве и SQL
Таблица Alt-кодов
Таблица HTML цветов
Таблица кодирования символов в URL
Таблица символов ASCII + Windows 1251
Таблица символов KOI8-R
Таблица символов эмодзи
Таблица цветов RAL classic
Флаги стран
Часовые пояса в PHP
Коды регионов ISO 3166-1 Alpha 2
Страница не найдена (ошибка 404)
PHP
array_unique для многомерных массивов
Contenteditable – текстовый редактор
CURL — если сервер отдает редирект
date() – форматирование даты PHP
PHP parse_url и её обратная функция
PHP класс для отправки E-mail
PHP класс для хлебных крошек
PHP массив в файл CSV
PHP паттерн Registry
PHP транслит
PHP функции для checked и selected
PHP функция serialize, возможные проблемы
PHP-класс для создания миниатюр изображений
PHP-класс обертка для PDO
POST-запрос через file_get_content()
RSS канал на PHP
RSS-файл для Яндекс Турбо-страниц
WebP вместо изображений в браузерах где он поддерживается
Whois, как получить данные IP-адреса и домена в PHP
XML для Яндекс. Недвижимости на PHP
XML-файл объявлений для Авито
ZIP в PHP (ZipArchive)
Автозагрузка классов
Автоматическая установка временной зоны у пользователя
Автоматический контраст цвета шрифта к фону на PHP
Автоматическое заполнение поля «город» в форме по IP адресу
Автоматическое оглавление для статьи
Автоматическое сжатие и оптимизация картинок на сайте
Авторизация на сайте через Facebook
Авторизация на сайте через Яндекс
Авторизация через GitHub
Алфавитный указатель на PHP
Бот Телеграм на PHP
Время жизни сессии в PHP
Время и память выполнения скрипта PHP
Вставить баннер в центр статьи
Вставка и добавление в текст регулярными выражениями
Вход на сайт через Вконтакте
Вход через Google
Вывести массив в виде PHP кода
Вывод HTML-таблицы с функцией сортировки на PHP + MySQL
Вывод PHP-массива колонками
Вывод даты с русскими месяцами
Вывод списка по алфавиту
Выпадающий список с файлами на хостинге
Вычисление процентов в PHP
Генерация QR-кода в PHP
Генерация XML файла для Google Merchant
Генерация YML файл Яндекс Маркета на PHP
Генерация всех комбинаций из набора символов
Генерация паролей в PHP
Генерация превьюшек изображений на лету
Генерация случайных буквенно-цифровых кодов в PHP
Генерация счета на оплату PDF PHP
Генерация токенов в PHP
Дополнительные функции mb_string
Загрузка изображений с превью AJAX + PHP + MySQL
Загрузка файлов на сервер PHP
Загрузка файлов через AJAX с помощью jQuery Form Plugin
Замена кавычек на «ёлочки» в PHP
Замена раскладки на PHP
Замена регистра в строках PHP
Замена символов по регулярному выражению
Запись в лог-файл в PHP
Запись и чтение файлов в PHP
Заполненные PHP-массивы для дат
Защита от нелегального зеркала сайта
Извлечение данных с помощью регулярных выражений PHP
Изображения WebP в GD PHP
Интеграция с платежной системой PayKeeper в PHP
Исключения PHP (Try и Catch)
Использование API Геокодера в PHP для получения координат
Использование API Яндекс Диска на PHP
Использование циклов в PHP
Как включить вывод символов эмодзи на сайте
Как вывести PHP массив
Как вывести метки на Яндекс. Картах из MySQL+PHP
Как выделить фразы в тексте
Как добавить UTM-метки в заявки с сайта
Как дописать стили в атрибут style тегов HTML через PHP
Как интегрировать ReCAPTCHA на сайт
Как найти новые координаты точки при повороте изображения PHP-функцией imagerotate()
Как найти одинаковые файлы с разными именами в PHP
Как настроить Last-Modified
Как получить IP посетителя в PHP
Как получить все дни между датами в PHP
Как получить текущий URL в PHP?
Как преобразовать текст из textarea в параграфы HTML
Как прочитать SSL сертификат из PHP
Как сделать редирект PHP
Как сформировать большой файл для маркета
Как узнать, что пришел запрос через AJAX
Календарь на PHP
Кнопка «Показать еще»
Конвертация байтов в килобайты и мегабайты
Кэширование контента в файлы PHP
Мануал по созданию и форматированию excel файлов в PHPExcel
Массив $_FILES
Массив $_SERVER
Метрика API
Многоуровневый select из базы данных
Обзор PHP расширений для чтения файлов Excel
Обновление таблицы БД из XML файлов
Обработка и вывод рейтинга в PHP
Обработка изображений в PHP
Обрезка текста для анонса
Округление чисел в PHP
Операции с датами и временем Unixtime в PHP
Оплата заказов на сайте через Робокассу
Определение местоположения посетителя по IP-адресу в PHP
Определение мобильного устройства в PHP
Определение основного цвета изображения в PHP
Определение поисковых роботов
Отдача файлов на скачивание PHP
Отключить кэширование PHP
Отправка sms через «SMS Aero» в PHP
Отправка и прием данных 1C на PHP-сайте
Отправка писем через PHPMailer
Отправка писем через SMTP в PHPMailer
Отправка письма с вложением
Отправка сообщения с изображением в Twitter через PHP
Отправка формы через PHP CURL
Отслеживание окончания доменов и SSL-сертификатов
Очистка данных из форм в PHP
Перекодировка текста UTF-8 и WINDOWS-1251
Переносы строк и тег BR в PHP
Платежи на сайте через IntellectMoney PHP
Поворот изображения по двум точкам на PHP GD + jQuery UI Droppable
Подгрузка контента при прокрутке (бесконечная лента)
Подключение к платежной системе Сбербанка
Поиск ближайших объектов в БД по координатам
Поиск на сайте внешних ссылок и их анкоров
Поиск похожих текстов в базе данных MySQL + PHP
Поиск телефона в базе данных MySQL
Поиск файлов в PHP
Поле для выбора количества товаров
Получение котировок PHP
Получить DNS записи домена в PHP
Получить GET-параметр из URL
Получить фото из Instagram без API
Постраничный вывод и базы данных
Постраничный вывод массива
Прайс-лист для Яндекс карт и справочника
Преобразование CSV в XLSX на PHP
Преобразование punycode в PHP
Преобразование изображения в Base64 на PHP
Преобразование строк в массив PHP
Преобразование цветов в PHP
Прием платежей на сайте через интернет-эквайринг Тинькофф
Прием платежей на сайте через Юкассу
Пример парсинга html-страницы на phpQuery
Примеры использования cURL в PHP
Примеры использования PDO MySQL
Проблема PHP DOMDocument – русские буквы заменяются на мнемоники
Проверка данных регулярными выражениями
Публикация записей на стену сообщества VK
Публикация на страницу Facebook через PHP
Работа с API Instagram
Работа с FTP в PHP
Работа с JSON в PHP
Работа с MIME-типами в PHP
Работа с директориями в PHP
Работа с именами файлов в PHP
Работа с массивами PHP – создание, наполнение, удаление
Работа с ценами PHP
Работа с числами в PHP
Работа со строками в PHP
Размер файлов и директорий в PHP
Раскрывающийся многоуровневый список
Расчёт прибыльности за одну единицу товара
Расчёт средней закупочной или продажной цены
Регулярные выражения для замены на теги
Регулярные выражения для удаления тегов
Рисование точки в PHP GD
Секунды в минуты, часы, дни
Склонение слов после числительных в PHP
Создание товарной накладной в PHPExcel
Сортировка массива по количеству символов
Сортировка массивов
Сохранить все изображения со страницы сайта
Сохранить файл в UTF-8 без BOM
Сумма прописью PHP
Счетчик просмотров страниц с графиком
Транслитерация по ГОСТ
Удаление регулярными выражениями в PHP
Управление выводом ошибок PHP
Установка лимитов PHP на обработку данных из форм
Установка локали UTF-8 в PHP
Фильтрация IP-адресов
Форматирование телефонных номеров
Формирование файла sitemap. xml
Хеширование строк в PHP
Чтение Google таблиц в PHP
Чтение XML файла Яндекс Маркета в PHP
Чтение почты через IMAP в PHP
Шаблонизатор Smarty
Шорткоды на регулярных выражениях
Яндекс.Доставка работа с API в PHP
HTML/CSS
Clearfix – отмена действия float
CSS @media для мобильных, планшетов и настольных компьютеров
CSS display table
CSS стили выделенного текста
CSS стили для placeholder
CSS фильтры
CSS-стили для списков dl, dt, dd
Favicon
Input type number
Manifest. json
Open Graph
Schema.org – пример разметки блога
Schema.org – пример разметки статьи
Select option с ссылками
SVG спрайты
Адаптивное выравнивание изображений на всю ширину браузера
Адаптивные блоки YouTube
Адаптивные плееры Youtube на десктопах и мобильных
Блоки со стрелками (часть 1)
Блоки со стрелками (часть 2)
Блокировка многократной отправки формы
Буквица CSS
Ведущие нули у ol
Верстка блока контактов с картой
Верстка рейтинга в виде звезд
Верстка списка с отточием
Вертикальное выравнивание в блоке (Flexbox)
Вертикальное выравнивание текста в блоке (child-helper)
Видео c YouTube в качестве фона сайта
Восстановление стилей текста после CSS reset
Выборка элементов в группе по псевдоклассам CSS
Выравнивание блока по центру родителя
Выравнивание блоков на всю ширину (justify)
Горизонтальное меню
Горизонтальное меню justify
Готовые CSS стили для таблиц
Добавление CSS стилей на страницу
Заголовок с горизонтальной линией посередине
Затемнение изображения и фона с помощью CSS
Изменение CSS-градиента в зависимости от положения курсора
Изменение размеров textarea и других элементов
Изменение цвета Яндекс карт
Информирование о использовании Сookie
Как вместить большие таблицы на страницы сайта
Как вывести штрих-код на сайте
Как загрузить содержимое файла в textarea
Как запретить выделение текста на сайте через CSS
Как ограничить ввод данных в текстовое поле
Как отключить автозаполнение сохранённого логина и пароля в форме
Как отключить тег br
Как сделать интерактивную схему на SVG + jQuery
Как сделать кривые границы блоков в CSS
Как сделать несколько фонов в background
Как сделать полосатую таблицу на HTML, CSS, JS, PHP
Как скрыть лишний текст в блоке
Колоночные шаблоны
Кривое подчёркивание ссылок в Google Chrome
Курсоры в CSS
Ленточки и флажки для блоков на HTML/CSS
Мета-тег viewport
Мета-теги HTML для Apple Safari
Мета-теги для Internet Explorer и Windows
Наведение курсора на ячейки, строки, колонки таблицы
Наложение градиента на изображение
Настройка плеера YouTube
Не стандартный СSS градиент
Номер телефона на сайте
Одна рамка между блоками
Описание мета-тегов
Оформление placeholder разными стилями
Перечёркивание текста по диагонали
Перечёркнутый текст
Печать HTML страниц
Плавное изменение background
Плавное увеличение фонового изображения
Подключение и выполнение JavaScript на странице
Подключение шрифтов в CSS
Подключение шрифтов с другого домена
Подчеркивание текста линией с градиентом
Показать/скрыть пароль
Поле для ввода показаний счетчика
Полупрозрачный градиент поверх картинки
После отправки формы сохранить позицию скролла
Прижать футер к низу окна браузера
Проверка орфографии в браузере
Прокрутка содержимого таблицы
Псевдоклассы nth-child и nth-last-child
Размеры Iframe
Разметка страниц для Twitter (Twitter Cards)
Рамка у отдельных ячеек таблицы
Рамки блоков с градиентом
Расстояние между буквами, строками, ширина табуляции в CSS
СSS стили для горизонтальных линий
Сборник CSS градиентов
Сборник анимированных градиентов
Сброс стилей (CSS reset)
Ссылки на мессенджеры с сайта
Стандартные и безопасные шрифты CSS
Стандарты HTML-документов
Стили для вложенных нумерованных списков ol
Стили для нумерованных списков ol
Стилизация Checkbox
Стилизация input file
Стилизация Radio Button
Стилизация кнопок CSS
Стиль и размер ReCaptcha
Текст в две колонки
Текст в три колонки
Текст с градиентом
Треугольники на CSS
Ускорение загрузки изображений и скриптов
Ускорение загрузки Яндекс Карт
Фильтр файлов по расширению у input file
Фильтры Instagram на CSS
Фон под текстом
Цветные SVG фильтры для элементов
Чекбокс в виде переключателя (switch toggle)
Чекбоксы в виде кнопок
Шахматное поле на CSS
Эффекты анимации на CSS animation keyframes
Яндекс карты не прямоугольной формы
JS/jQuery
htaccess
Bootstrap
Программы
Разное
Справочники
DNS-сервера хостингов
HTTP коды
Адреса phpMyAdmin хостингов
Адреса серверов POP3, IMAP и SMTP
Алфавиты в массивах и строках
База городов, регионов и федеральных округов РФ в MySQL
Виртуальные коды клавиш (Virtual-Key Codes)
Когда обновляются DNS сервера?
Коды валют
Коды клавиш клавиатуры для JQuery событий keydown, keyup и keypress
Коды языков ISO 639-1
Коды языков ISO 639-2
Настройки почты для домена Mail. ru, Яндекс, Gmail
Округа и районы Москвы в MySQL
Скан-коды клавиш клавиатуры (scan codes)
Спецсимволы и их мнемоники в HTML
Список MIME типов
Список городов РФ
Список регионов РФ
Список серверов Whois
Список станций Московского метрополитена в PHP-массиве и SQL
Список станций Петербургского метрополитена в PHP-массиве и SQL
Таблица Alt-кодов
Таблица HTML цветов
Таблица кодирования символов в URL
Таблица символов ASCII + Windows 1251
Таблица символов KOI8-R
Таблица символов эмодзи
Таблица цветов RAL classic
Флаги стран
Часовые пояса в PHP
Коды регионов ISO 3166-1 Alpha 2
кнопок | Primer CSS
Стабильный
Просмотреть исходный код
На этой странице
Кнопки используются для действий , как в формах, а текстовые гиперссылки используются для пунктов назначения или перехода с одной страницы на другую.
Примечание. При использовании элемента , всегда указывайте тип .
Типы кнопок
По умолчанию
Используйте стандартные — но стильные — .btn для действий формы и общих действий страницы. Они широко используются на сайте.
Основные
Основные кнопки зеленого цвета и используются для обозначения основных действий на странице. Если вам нужно, чтобы ваши кнопки выделялись, используйте . btn.btn-primary . Вы можете использовать его с кнопками обоих размеров — просто добавьте .btn-primary .
Контур
Кнопки контура преуменьшают действие, поскольку они выглядят как прямоугольные ссылки. Просто добавьте .btn-контур и вперед.
Опасность
Кнопки опасности красные. Они помогают повторить, что предполагаемое действие важно или потенциально опасно (например, удаление репо или передача права собственности). Подобно основным кнопкам, просто добавьте .btn-danger .
Selected
Добавление атрибута aria-selected="true" сохранит кнопку в выбранном состоянии. Обычно используется для BtnGroups .
<дел>
<дел> дел>
Отключено
Отключено и элементов с атрибутом aria-disabled="true" .
Далее к размеру по умолчанию есть еще . btn-sm (маленький) и .btn-большой вариант . Используйте их, чтобы уменьшить или увеличить размер кнопки. Это полезно для установки кнопки рядом с входом или превращения кнопки в заметный призыв к действию в основных разделах.
При необходимости можно использовать утилиты масштабирования шрифта для изменения размера шрифта. Отступы применяются в em так, чтобы они масштабировались пропорционально размеру шрифта.
Использование .btn-large с утилитой масштабирования шрифта для преобразования текста в больший размер.
Сделайте любую кнопку полной ширины, добавив . btn-block . Он добавляет ширину : 100%; изменяет отображение с inline-block на block и центрирует текст кнопки.
Кнопка ссылки
Создайте кнопку, похожую на ссылку с .btn-ссылка . Вместо того, чтобы использовать для запуска JS, этот стиль на следует использовать для лучшей доступности.
Класс .btn-link не предназначен для использования с .btn ; перекрывающиеся стили несовместимы.
Невидимая кнопка
Когда вам нужна ссылка, но вы хотите он дополнен, а линия увеличена, как кнопка, которая лучше всего подходит для действий «отмены» в формах.
Кнопка скрытого текста
Используйте .hidden-text-expander для указания и переключения скрытого текста.
<диапазон>
Вы также можете сделать расширитель встроенным добавив .встроенный .
Кнопки только со значками .btn-octicon становятся синими при наведении. Используйте .btn-octicon -danger , чтобы при наведении значок становился красным.0003
w3.org/2000/svg" viewBox="0 0 16 16">
Кнопка закрытия
используя значок
octicon-x для кнопки закрытия, добавьте .close-button , чтобы удалить стили кнопок по умолчанию.
w3.org/ 2000/svg" viewBox="0 0 16 16">
Кнопка со счетчиками
Вы можете легко добавить счетчик к маленькой кнопке . Добавьте класс .btn-with-count к .btn-sm , а затем добавьте .social-count после кнопки. Обязательно очистите число с плавающей запятой, добавленное дополнительным классом
Соскучились по набору пуговиц, прикрепленных друг к другу? Оберните их в . BtnGroup , и кнопки будут закруглены и разнесены автоматически.
<дел> КнопкаКнопкаОпасно
<дел> КнопкаКнопкаКнопка дел>
Кнопка
Кнопка
Опасно
Кнопка
Кнопка
Кнопка
Используйте BtnGroup-item btn btn-sm для небольших элементов BtnGroup.
<дел> КнопкаКнопкаКнопка
Кнопка
Кнопка
Кнопка
Добавить . BtnGroup-parent к родительским элементам, например s или s, в пределах .BtnGroup s для правильного интервала и закругленных углов.
<дел> Кнопка <форма> Кнопка в форме форма> КнопкаКнопка дел>
Кнопка
Кнопка
Кнопка
Редактировать эту страницу на GitHub
10
участников
2 Последний раз редактировалось ichelsea
на
31 мая 2022 г.
Техники и ресурсы — Smashing Magazine
Чтение: 12 мин.
Кодирование,
Кнопки,
CSS,
Техники,
Essentials
Поделиться в Twitter, LinkedIn
Об авторе
Янко Йованович — дизайнер пользовательского интерфейса, инженер-программист, блогер, спикер и художник. В свободное время он пишет о пользовательских интерфейсах в своем блоге…
Больше о
Janko ↬
Кнопки, независимо от их назначения, являются важными элементами дизайна. Они могут быть конечной точкой веб-формы или призывом к действию. У дизайнеров есть много причин для оформления кнопок, в том числе для того, чтобы сделать их более привлекательными и повысить удобство использования. Однако одной из наиболее важных причин является то, что стандартные кнопки могут легко пропустить пользователи , потому что они часто похожи на элементы в их операционной системе. Здесь мы представляем вам несколько техник и руководств, которые помогут вам научиться стилизовать кнопки с помощью CSS. Мы также рассмотрим удобство использования.
Прежде чем мы объясним, как стилизовать кнопки, давайте проясним распространенное заблуждение: кнопки — это не ссылки. Основная цель ссылки — перемещаться между страницами и представлениями, тогда как кнопки позволяют выполнять действие (например, отправлять форму).
Кнопки, независимо от их назначения, являются важными элементами дизайна. Они могут быть конечной точкой веб-формы или призывом к действию. У дизайнеров есть много причин для оформления кнопок, в том числе для того, чтобы сделать их более привлекательными и повысить удобство использования. Однако одной из наиболее важных причин является то, что стандартные кнопки могут легко пропустить пользователи , потому что они часто похожи на элементы в их операционной системе. Здесь мы представляем вам несколько техник и руководств, которые помогут вам научиться стилизовать кнопки с помощью CSS. Мы также рассмотрим удобство использования.
Возможно, вы захотите взглянуть на следующие статьи по теме:
Нажатие кнопок с помощью CSS3
Освоение CSS, часть 1: стилизация элементов дизайна
Разработка ссылок «Подробнее» и «Продолжить чтение»
Элементы веб-дизайна: примеры и рекомендации
Прежде чем объяснять, как оформлять кнопки, давайте проясним распространенное заблуждение: кнопки — это не ссылки. Основная цель ссылки — перемещаться между страницами и представлениями, тогда как кнопки позволяют выполнять действие (например, отправлять форму).
Больше после прыжка! Продолжить чтение ниже ↓
В одной из своих статей Якоб Нильсен пишет о командных ссылках, которые представляют собой смесь ссылок и кнопок. Но он рекомендовал ограничивать командные ссылки действиями с незначительными последствиями и второстепенными командами. Чтобы узнать больше о первичных и вторичных командах (и действиях), ознакомьтесь с первичными и вторичными действиями в веб-формах Люка Вроблевски. Чтобы узнать больше о различиях между ссылками и кнопками, прочитайте «Создание полезных ссылок и кнопок на UXBooth».
Основные стили
Самый простой способ стилизовать ссылки и кнопки — добавить цвет фона, отступы и границы. Ниже приведены примеры кода для ссылки, кнопки и элементов ввода («Отправить»).
Этот простой код сводит к минимуму визуальные различия между ссылками и кнопками. А вот примеры кода выше:
Важно отметить, что эти три элемента отображаются по-разному с одним и тем же CSS . Таким образом, вы должны тщательно стилизовать эти элементы, чтобы обеспечить согласованность на вашем веб-сайте или в приложении.
Изображения
Добавление изображений к кнопкам может сделать кнопки более заметными. Иногда само изображение ясно сообщает о назначении кнопки ; например значок лупы для поиска или значок дискеты для сохранения. Самый простой способ добавить изображение к кнопке — использовать фоновое изображение, а затем расположить его соответствующим образом. Ниже приведены наши примеры со значком галочки.
Помимо состояния по умолчанию кнопки и ссылки могут иметь два других состояния: наведение курсора и активное (т. е. нажатое). Важно, чтобы кнопки выглядели по-разному в разных состояниях, чтобы пользователи понимали, что происходит. Любой элемент в состоянии наведения можно стилизовать, вызвав :hover Псевдокласс CSS.
а: наведите {
цвет:#f00;
}
Хотя это очень важно, активное состояние редко применяется на веб-сайтах. Показывая это состояние, вы гарантируете, что ваши кнопки реагируют, и отправляете визуальный сигнал пользователям о том, что кнопка была нажата. Это называется изоморфным соответствием и представляет собой «отношение между появлением визуальной формы и сопоставимым человеческим поведением» (Люк Вроблевски, Site-Seeing). В статье «Состояние нажатой кнопки с помощью CSS» подробно рассматривается важность активного состояния.
а: активный {
цвет:#f00;
}
Есть еще одно состояние, которое видно при навигации с помощью клавиатуры: состояние фокуса. Когда пользователь переходит к кнопке с помощью клавиши Tab, ее внешний вид должен измениться, желательно, чтобы он выглядел так же, как при наведении.
а: фокус {
цвет:#f00;
}
В приведенных ниже примерах показан общий способ стилизации состояний кнопок. Состояние наведения немного светлее, чем обычное состояние, а активное состояние имеет инвертированный градиент, имитирующий нажатие. Хотя вам не нужно ограничивать себя этим стилем, это хорошее место для начала.
Мы должны поговорить о том, как обращаться со свойством контура для состояний :active и :focus . Правильное обращение с этим свойством важно для удобства пользователей, использующих клавиатуру так же, как и мышь. В статье Better CSS Outline Suppression Патрик Лауке показывает, как кнопки и ссылки ведут себя в различных комбинациях состояний, и объясняет, почему свойство структуры должно вызываться только с состоянием :active .
Синяя кнопка «Купить сейчас» на сайте Apple. com имеет немного более светлый фон для состояния наведения и стиль вставки для активного состояния. Даже основная навигационная кнопка на сайте Apple реализует все три состояния.
Хотя эта причудливая кнопка не реализует активное состояние, она имеет приятный эффект затухания при наведении курсора.
Кнопка «Подробнее» на UX Booth становится зеленой при наведении и перемещается на один пиксель вниз в активном состоянии, что имитирует эффект нажатия кнопки.
Полезное чтение
В статье Новое открытие элемента Button показаны различия между ссылками и кнопками и объясняется, как легко стилизовать кнопки.
Styling Form Buttons охватывает основы оформления кнопок со множеством примеров.
Красивые кнопки CSS с набором значков показывает, как стилизовать кнопки с помощью фоновых изображений. Хотя они и не масштабируются, это действительно хорошие кнопки.
Recreating the Button — очень хорошая статья, в которой объясняется, как Google пришел к кнопкам, которые он использует на большинстве своих веб-сайтов.
Масштабируемые кнопки CSS с использованием PNG и цветов фона объясняет, как создавать действительно потрясающие кнопки для всех состояний. Хотя он использует jQuery, он изящно деградирует, если JavaScript отключен.
Раздвижные двери: гибкие кнопки
При оформлении кнопок необходимо учитывать одно важное соображение: масштабируемость. Масштабируемость в этом контексте означает возможность растягивать кнопку, чтобы она соответствовала тексту, и повторно использовать изображения. Если вы не хотите создавать разные изображения для каждой кнопки, рассмотрите технику «раздвижных дверей». Этот метод позволяет создавать масштабируемые, насыщенные кнопки.
Принцип заключается в том, что два изображения скользят друг по другу, позволяя кнопке растягиваться до содержимого . Обычно это делается путем вложения элемента span в ссылку. Как показано на изображении выше, у каждого элемента есть собственное фоновое изображение, позволяющее создать эффект скольжения. Два приведенных ниже фрагмента кода показывают структуру и основные стили для этого эффекта.
a {
фон: прозрачный URL('button_right.png') без повтора прокрутки вверху справа;
дисплей: блок;
плыть налево;
/* отступы, поля и другие стили здесь */
}
промежуток {
фон: прозрачный URL('button_left.png') без повторов;
дисплей: блок;
/* отступы, поля и другие стили здесь */
}
Преимущества этого метода заключаются в том, что он:
Это простой способ создания визуально насыщенных кнопок;
Обеспечивает доступность, гибкость и масштабируемость;
Не требует JavaScript;
Работает во всех основных браузерах.
Полезное чтение
Статья «Sliding Doors of CSS» на A List Apart (часть 1 и часть 2) посвящена основам этой техники. Хотя эти статьи немного устарели, их должен прочитать каждый веб-разработчик.
Также немного устарела, «Создание пуленепробиваемых графических кнопок ссылок с помощью CSS» — отличная статья, в которой показано, как создавать пуленепробиваемые, изменяемые по размеру, сжатые кнопки. Также обязательна к прочтению.
Filament Group предлагает множество отличных статей и руководств. Его вторая статья о кнопках CSS, «Стиль элемента кнопки с помощью раздвижных дверей CSS», объясняет, как создавать кнопки, комбинируя методы. Хотя он не поддерживает активное состояние, его можно легко расширить.
Если вам нужны кнопки в стиле Wii, в статье «Простые круглые ссылки CSS (кнопки Wii)» представлены все необходимые ресурсы и пояснения по их стилизации.
Обычный способ реализовать технику раздвижных дверей CSS — использовать два изображения. Однако статья CSS Sliding Door Using Only One Image показывает, что можно добиться того же эффекта, используя только одно изображение.
Овальные кнопки CSS и Квадратные кнопки CSS от Dynamic Drive — две другие статьи, демонстрирующие эффективность раздвижных дверей CSS.
CSS-спрайты: одно изображение, немного
При использовании CSS-спрайтов один файл изображения содержит несколько графических элементов , обычно выложенные в виде сетки. Разбивая изображение, мы показываем только один спрайт за раз. Для кнопок мы можем включить графику для всех трех состояний в один файл. Этот метод эффективен, поскольку требует меньше ресурсов, а страница загружается быстрее. Все мы знаем, что много запросов к серверу для нескольких небольших ресурсов может занять много времени. Вот почему CSS-спрайты так удобны. Они значительно сокращают количество обращений к серверу. Они настолько мощны, что некоторые разработчики используют спрайты CSS для всей своей графики. Обзор Holy Sprites о трюках CSS предлагает несколько очень креативных решений.
В приведенном ниже примере показано простейшее использование спрайтов CSS. Одно изображение содержит графику для всех трех состояний кнопки. Настраивая свойство background-position , мы определяем точную позицию фонового изображения, которое нам нужно. Изображение, которое мы выбираем для отображения, соответствует положению фона top: -30px и left: 0 .
а {
фон: белый url(buttons.png) 0px 0px без повтора;
}
а: наведите {
фоновая позиция: -30px 0px;
}
а: активный {
фоновая позиция: -60px 0px;
}
Для получения общей информации и ресурсов по CSS-спрайтам ознакомьтесь с The Mystery of CSS Sprites: Techniques, Tools and Tutorials».
Полезное чтение
В этом простом руководстве «Как создать простую кнопку с помощью спрайтов изображений CSS» Крис Спунер объясняет, как создать изображение спрайтов CSS в Photoshop и использовать его с CSS.
Преобразование элемента кнопки с помощью раздвижных дверей и спрайтов изображений показывает, как обогатить элемент кнопки комбинацией раздвижных дверей и спрайтов изображений. Он реализует активное состояние очень интересным образом, не используя разные изображения или цвета, а скорее позиционируя.
CSS 3: Кнопки будущего
CSS 3 позволяет нам создавать визуально богатые кнопки всего несколькими строками кода. Пока что это самый простой способ создания кнопок. Недостатком CSS 3 является то, что в настоящее время он поддерживается только Firefox и Safari. Положительным моментом является то, что кнопки, стилизованные с помощью CSS 3 , изящно деградируют в неподдерживаемых браузерах . Используя свойства браузера -moz-border-radius (для Firefox) или -webkit-border-radius (для Safari), вы можете определить радиус углов. Вот несколько примеров того, что можно сделать со свойством радиуса границы.
Для лучших результатов вы можете комбинировать закругленные углы CSS 3 со свойством фонового изображения. Пример ниже показывает типичную кнопку с градиентным изображением, первое без закругленных углов, а второе с.
По сравнению с раздвижными дверями этот метод намного проще. Однако, если вы хотите сохранить визуальную согласованность во всех браузерах, используйте раздвижные двери, поскольку они работают во всех основных браузерах, включая IE6. Чтобы узнать больше о возможностях CSS 3, прочтите Увлекательные функции и возможности CSS 3: более 30 полезных руководств». А вот несколько хороших руководств по стилизации кнопок с помощью функций CSS 3.
Полезное чтение
Super Awesome Buttons With CSS 3 и RGBA демонстрирует мощь CSS 3 с закругленными углами, тенями Mozilla и RGBA, цветовым режимом, добавляющим альфа-смешивание к вашим любимым свойствам CSS. Это один из лучших примеров кнопок CSS 3.
Создание кнопок без изображений с помощью CSS 3 объясняет недостатки использования изображений для кнопок и показывает несколько вариантов создания кнопок CSS 3 без изображений.
Мгновенные инструменты: полезны ли они?
Существуют инструменты для создания кнопок, такие как Easy Button и Menu Maker и My Cool Button, а также для создания спрайтов CSS, такие как генератор спрайтов CSS, но вопрос в том, действительно ли они помогают создавать кнопки, соответствующие вашим потребностям. Хотя они настраиваются и просты в использовании, ваше творчество и контроль над результатами ограничены, что делает кнопки среднего вида. Использование универсальных кнопок не является хорошей идеей.
Решение заключается в использовании Photoshop (или его бесплатной альтернативы) и проверенных методов, описанных в этой статье. Если вы новичок в Photoshop, вот несколько отличных руководств по созданию удивительных кнопок.
Если вы не знаете, с чего начать, iPhone-кнопка в Photoshop — идеальный выбор. Всего за 10-15 минут вы сможете создать такие же кнопки, как на iPhone.
Как создать гладкую и чистую кнопку в Photoshop — это очень подробный учебник, который проведет вас через 30 простых шагов и поможет вам изучить основы Photoshop. Кроме того, в статье объясняется, как использовать эту графику в сочетании с HTML и CSS для создания полнофункциональных кнопок CSS.
Кнопки и юзабилити: вместо заключения
Описанные выше приемы помогут вам создать потрясающие кнопки. Однако, поскольку они играют решающую роль в удобстве использования веб-сайта, кнопки должны соответствовать некоторым ключевым принципам:
Сначала обратите внимание на маркировку. Всегда маркируйте кнопки названием действия, которое выполняет пользователь . И всегда делайте это глаголом. Распространенной ошибкой является пометка кнопок «Перейти» для различных действий, таких как поиск, отправка электронной почты и сохранение. Ярлыки также должны быть короткими и по существу; нет необходимости загромождать пользовательский интерфейс.
Как уже упоминалось, включите все состояния кнопок (по умолчанию, при наведении, активно), чтобы предоставить пользователю четкие визуальные подсказки о том, что происходит. Контуры кнопок должны оставаться только в активном состоянии.
Четкое различие между первичными и вторичными действиями. Самое важное действие должно быть самым заметным. Обычно это делается путем присвоения первичным и вторичным действиям разных цветов.
Обратите особое внимание на согласованность . Кнопки должны быть одинаковыми во всем веб-приложении, как визуально, так и по поведению. Используйте раздвижные двери CSS для повторно используемых кнопок или закругленные углы CSS 3, чтобы сохранить согласованность.
Хотя это очевидно, мы должны отметить, что вся область кнопки должна быть кликабельной.
Создание полезных ссылок и кнопок объясняет, почему пользователи иногда ждут кнопок, а ссылки — в других случаях. Он также показывает, как выбирать между двумя элементами.
Как спроектировать кнопки для повышения удобства использования объясняет некоторые принципы удобства использования, которые следует учитывать при разработке кнопок. Он охватывает основы использования значков, внешнего вида, поведения, иерархии и согласованности.
Bulma: Бесплатная современная CSS-инфраструктура с открытым исходным кодом на основе Flexbox
Кнопка является неотъемлемым элементом любого дизайна. Он должен выглядеть и вести себя как интерактивный элемент вашей страницы.
Кнопка доступна во всех различных цветах , определенных картой $colors Sass.
Пример
HTML
БелыйСветТемныйЧерныйТекстПризрак
Пример
HTML
<дел>
ОсновнойСсылка
<дел>
ИнформацияУспехПредупреждениеОпасно
дел>
Теперь каждый цвет доступен в облегченной версии . Просто добавьте модификатор is-light к модификатору цвета, чтобы применить светлую версию кнопки.
Пример
HTML
<дел>
ОсновнойСсылка
<дел>
ИнформацияУспехПредупреждениеОпасно
Размеры
#
Кнопка поставляется в 4 разных размерах:
маленький
обычный
средний
большой
Хотя размер по умолчанию — нормальный , существует модификатор is-normal на случай, если вам нужно сбросить кнопку до ее нормального размера.
Пример
HTML
МаленькийПо умолчаниюОбычныйСреднийБольшой
Вы можете изменить размер нескольких кнопок одновременно, поместив их в родитель кнопок и применив один из 3 модификаторов:
пуговицы-маленькие
кнопки средние
кнопки большие
Пример
HTML
<дел>
ВсеСреднийРазмер
дел>
Вы можете изменить размер только подмножества кнопок , просто применив к ним класс модификатора. Например, если вы хотите, чтобы все кнопки были размером , маленькими , но при этом одна из них имела обычный размер , просто сделайте следующее:
Если вам нужны разные размеры кнопок для каждой точки останова, вы можете использовать отзывчивые кнопки Bulma . Просто добавьте модификатор is-responsive :
Имя
Фиксированный размер
Адаптивный размер (измените размер окна, чтобы увидеть в действии)
Код
По умолчанию
<кнопка>
По умолчанию
кнопка>
Маленький
<кнопка>
Маленький
кнопка>
Обычный
<кнопка>
Обычный
кнопка>
Средний
<кнопка>
Середина
кнопка>
Большой
<кнопка>
Большой
кнопка>
Открыть таблицу в новом окне
Вы можете настроить размеры, перезаписав переменную $button-responsive-sizes Sass.
Дисплеи
#
Пример
HTML
МаленькийОбычныйСреднийБольшой
Стили
#
Контурный
Пример
HTML
КонтурныйКонтурКонтурКонтурКонтурКонтурный
Инвертированный (цвет текста становится цветом фона и наоборот)
Вы можете очень легко превратить кнопку в ее версию loading , добавив модификатор is-loading . Вам даже не нужно удалять внутренний текст, что позволяет кнопке сохранять исходный размер между состоянием по умолчанию и состоянием загрузки.
Вы можете создать неинтерактивную кнопку , используя модификатор is-static . Это полезно для выравнивания текстовой метки с вводом, например, при использовании надстроек формы.
Статический
Статический
Отключено
Bulma поддерживает использование атрибута disabled Boolean HTML, который не позволяет пользователю взаимодействовать с кнопкой.
Класс CSS is-disabled объявлен устаревшим в пользу атрибута disabled HTML. Подробнее
Вы можете создать список кнопок с помощью контейнера кнопок .
<дел>
Сохранить измененияСохранить и продолжитьОтмена
дел>
Если список очень длинный , он будет автоматически перенесен на несколько строк , сохраняя при этом все кнопки на одинаковом расстоянии друг от друга .
Вы можете прикрепить кнопки вместе с модификатором has-addons .
<дел>
ДаВозможноНет
дел>
Используйте модификаторы is-centered или is-right , чтобы изменить выравнивание .
<дел>
ДаВозможноНет
<дел>
ДаВозможноНет
дел>
Вы можете использовать любой класс модификатора на каждой кнопке, чтобы различать их. Не забудьте также добавить модификатор is-selected , чтобы убедиться, что выбранная кнопка выше своих братьев и сестер.