Естественно адаптивная сетка CSS с помощью minmax() и min()

От автора: CSS Grid в настоящее время широко поддерживается в современных браузерах, и многие люди отлично пользуются этим! Но, к сожалению, одна из самых полезных функций спецификации не работает так, как заявляется. В частности, невозможно создать «естественно адаптивную сетку» CSS, то есть сетку, которая реагирует на размер своего контейнера без использования медиазапросов. Но благодаря определенным стандартам, которые теперь доступны в некоторых браузерах, мы можем это исправить!

Естественно адаптивная сетка CSS с помощью minmax() и min()

Читать далее «Естественно адаптивная сетка CSS с помощью minmax() и min()»

Как добавить социальные кнопки на сайт

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

Как добавить социальные кнопки на сайт

Важность социальных кнопок

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

Другое дело – социальные кнопки. Обычно при клике по одной из них вы можете поделиться записью/ссылкой на своем аккаунте в соц. сети. Потом зайдете вечерком, и ссылка будет при вас. Я так однажды настолько забил себе стенку Вконтакте полезными статьями, что до сих пор их читаю).

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

Практический курс по верстке адаптивного сайта с нуля!

Изучите курс и узнайте, как верстать современные сайты на HTML5 и CSS3

Узнать подробнее

Варианты размещения в шаблонах

Вообще есть три основных варианта:

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

Над статьей. Это гораздо менее распространено. Тут расчет делается на заголовок и первые абзацы публикации. Например, увидел я заголовок “102 варианта приготовления каши”. О, интересно, сразу нажал, сохранил себе в соц. сеть, чтобы позже радовать себя разнообразием за столом.

Сбоку (вертикальное расположение + фиксация). Также достаточно распространенный вариант. Он подходит для сайтов, где сбоку есть место для расположения там узенького блока. Обычно в таком случае соц.сетей немного, от 3 до 10, чтобы поместиться по высоте на экране.

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

Как добавить на сайт кнопки соц. сетей: вариант для верстальщиков

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

Но решение есть! Это кнопки от GoodShare. Вот так прямо и введите в поиске, и вам наверняка выдаст их сайт. Скрипт от goodshare очень легкий и простой, устанавливается с пары кликов (можно подключить из очень быстрого CDN). Если вы верстальщик или хоть немного разбираетесь, я не буду вам объяснять, как устанавливаются скрипты, потому что вы в курсе.

Как добавить социальные кнопки на сайт

Гораздо более важная информация – это непосредственно вывод кнопок. В том месте шаблона, где нужно вывести иконку, например, ВК, вставляем такой код:

Практический курс по верстке адаптивного сайта с нуля!

Изучите курс и узнайте, как верстать современные сайты на HTML5 и CSS3

Узнать подробнее

При этом span data-counter является необязательным элементом. Это счетчик, который будет показывать кол-во кликов по иконке. Чтобы он работал, у вас должна быть подключена jQuery. В большинстве случаев счетчик вам не нужен, поэтому этот кусок кода вам не нужен. Собственно, все остальные кода есть в документации:

Как добавить социальные кнопки на сайт

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

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

Этим селектором можно прописать стили для кнопки расшаривания записи в социальную сеть Вконтакте.

Как видите, скрипт от goodshare дает отличные возможности. Он максимально оптимизирован и позволяет создать любой вид соц. кнопок.

Другие способы

Ладно, если вам не нужно существенным образом менять внешний вид кнопок и вы готовы удовлетвориться тем оформлением, которое предоставляет сторонний сервис, то используйте один из следующий сайтов, где можно установить соц. кнопки: share42.com, pluso, блок “Поделиться” от Яндекса

Или любой подходящий плагин для вашего движка. Я уверен, таких расширений достаточно много. Просто вбейте в поиск по плагинам слова вроде “social” и “share” и сразу получите что-то такое.

Я не буду подробно объяснять установку кнопок с помощью этих способов, потому что она проходит по одному сценарию и вам всего лишь нужно следовать инструкции сервисов.

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

Большие меню, маленькие экраны: адаптивная многоуровневая навигация

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

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

Продолжение …

Усеченный многострочный текст с кнопкой «показать больше» (только с помощью CSS)

Усеченный многострочный текст с кнопкой «показать больше» (только с помощью CSS)

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

То есть поддерживает ли он следующее:

Несколько строк

Кнопку «Показать больше», которая отображает полный текст при нажатии

text-overflow: ellipsis не поддерживает несколько строк, но я вспомнил о свойстве line-clamp, которое можно использовать для получения многострочного усеченного текста. К счастью, на CSS Tricks есть хорошая рабочая демо-версия, плюс поддержка браузерами теперь довольно приличная. Здорово!

Практический курс по верстке адаптивного сайта с нуля!

Изучите курс и узнайте, как верстать современные сайты на HTML5 и CSS3

А как насчет кнопки «показать больше»?

Читать далее «Усеченный многострочный текст с кнопкой «показать больше» (только с помощью CSS)»

Анимация переменных шрифтов с помощью CSS и Splitting JS

css animation

От автора:некоторое время назад я создал на Codepen демо-версию анимированного переменного шрифта. В этой статье я объясню, что такое переменные шрифты, как можно сделать их анимацию, и как я создал этот потрясающий эффект с помощью CSS и немного Javascript.

Представляем переменные шрифты

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

Читать далее «Анимация переменных шрифтов с помощью CSS и Splitting JS»

Полезные однострочники на JavaScript

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

Полезные однострочники на JavaScript

Здесь представлено 13 однострочников. Примеры подготовлены с использованием Node.js v11.x. Если вы будете использовать их в другой среде — это может повлиять на их выполнение.

Читать далее «Полезные однострочники на JavaScript»

Пример слайдера на чистом CSS3

Слайдер

Честно стырено с habr.

1. Верстаем основу

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

<div class="wrapper">
<input type="radio" name="point" id="slide1" checked>
<input type="radio" name="point" id="slide2">
<input type="radio" name="point" id="slide3">
<input type="radio" name="point" id="slide4">
<input type="radio" name="point" id="slide5">
<div class="slider">
<div class="slides slide1"></div>
<div class="slides slide2"></div>
<div class="slides slide3"></div>
<div class="slides slide4"></div>
<div class="slides slide5"></div>
</div>
<div class="controls">
<label for="slide1"></label>
<label for="slide2"></label>
<label for="slide3"></label>
<label for="slide4"></label>
<label for="slide5"></label>
</div>
</div>
Читать далее «Пример слайдера на чистом CSS3»

Слайдер на чистом CSS. Пример от школы разработки интерфейсов Yandex.

Слайдер сделан с помощью связки <input> и <label for=”#id”>. Вся магия происходит на уровне селектора #button-N:checked ~ .slider-inner .slider-slides. Когда мы кликаем по одному из инпутов-чекбоксов, он переходит в состояние checked. Мы можем этим воспользоваться и назначить нужный нам translate на контейнер со слайдами: transform: translate(-33%).

HTML часть

<section class="page">
    <div class="slider">
        <input class="slider__input" type="radio" id="btn-1" name="toggle" checked>
        <input class="slider__input" type="radio" id="btn-2" name="toggle">
        <input class="slider__input" type="radio" id="btn-3" name="toggle">
        <input class="slider__input" type="radio" id="btn-4" name="toggle">
        <div class="slider__controls">
            <label class="slider__label" for="btn-1"></label>
            <label class="slider__label" for="btn-2"></label>
            <label class="slider__label" for="btn-3"></label>
            <label class="slider__label" for="btn-4"></label>
        </div>
        <div class="slider__inner">
            <div class="slider__slides">
                <img class="slider__img" src="https://avatars.mds.yandex.net/get-pdb/1863907/66fc05cc-e47d-4daf-ad9e-983def81b0b8/s1200">
                <img class="slider__img" src="https://avatars.mds.yandex.net/get-pdb/1907868/77e32d2e-b4ed-435e-8e48-b7903a67f37b/s1200">
                <img class="slider__img" src="https://avatars.mds.yandex.net/get-pdb/1627222/8efe5070-9036-4913-86b4-8241480525db/s1200">
                <img class="slider__img" src="https://avatars.mds.yandex.net/get-pdb/1858966/d70c660c-6947-4ed3-b0bf-13e985b58427/s1200">
            </div>
        </div>
    </div>
</section>
Читать далее «Слайдер на чистом CSS. Пример от школы разработки интерфейсов Yandex.»

Бургер-меню с выездом влево

HTML часть. Не забываем подключить jquery.

<!DOCTYPE html>
<html lang="en">
<link rel="stylesheet" href="css/burger_menu.css">
<head>
<meta charset="UTF-8">
<title>Burger menu</title>
</head>
<body>
<div class="section">
<div class="menu-block">
<nav class="menu-nav">
<a class="menu-nav__link" href="#">Главная</a>
<a class="menu-nav__link" href="#">Портфолио</a>
<a class="menu-nav__link" href="#">Обо мне</a>
<a class="menu-nav__link" href="#">Контакты</a>
</nav>
<a href="#" class="menu-btn">
<span></span>
</a>
</div>
</div>
<script src="js/jquery-3.3.1.min.js"></script>
<script src="js/transform.js"></script>
</body>
</html>
Читать далее «Бургер-меню с выездом влево»

Трансформация 3D карточки-поворот на 180 градусов CSS3

img

HTML часть

<div class="section">
<div class="container">
<div class="card"><img src="https://codyhouse.co/demo/3d-animated-mockup/img/cd-app-image.png" alt=""></div>
<div class="card"><img src="https://codyhouse.co/demo/3d-animated-mockup/img/cd-app-image.png" alt=""></div>
<div class="card"><img src="https://codyhouse.co/demo/3d-animated-mockup/img/cd-app-image.png" alt=""></div>
<div class="card"><img src="https://codyhouse.co/demo/3d-animated-mockup/img/cd-app-image.png" alt=""></div>
<div class="card"><img src="https://codyhouse.co/demo/3d-animated-mockup/img/cd-app-image.png" alt=""></div>
<div class="card"><img src="https://codyhouse.co/demo/3d-animated-mockup/img/cd-app-image.png" alt=""></div>
</div>
</div>
Читать далее «Трансформация 3D карточки-поворот на 180 градусов CSS3»
") //-->

Статистика

Метки

Мы используем cookie-файлы для наилучшего представления нашего сайта. Продолжая использовать этот сайт, вы соглашаетесь с использованием cookie-файлов.
Принять