- 12 приемов CSS для создания прекрасных сайтов
- 1. Вертикальное выравнивание при помощи flex
- 2. Режимы наложения (смешивания)
- 3. Параллакс-скроллинг
- 4. Shape outside (придание элементу непрямоугольной формы)
- 5. Обрезка строки
- 6. Обрезка изображения при помощи clip path
- 7. Полная высота и ширина
- 8. Фильтры изображений
- 9. CSS-анимации
- 10. Вращение элементов
- 11. Маска
- 12. Приближение при наведении курсора
- Заключение
- 43 CSS Borders
- Related Articles
- Author
- Links
- Made with
- About a code
- Animated Border Image
- Author
- Links
- Made with
- About a code
- Partial Gradient Border
- Author
- Links
- Made with
- About a code
- Gradient Border with Rounded Corners
- Author
- Links
- Made with
- About a code
- Background Border
- Author
- Links
- Made with
- About a code
- Patterned Borders
- Author
- Links
- Made with
- About a code
- Custom Dashed Border
- Author
- Links
- Made with
- About a code
- Colorful Border
- Author
- Links
- Made with
- About a code
- Gradient Border Effect
- Author
- Links
- Made with
- About a code
- Gradient Border + Transparent Background
- Author
- Links
- Made with
- About a code
- Border Linear-Gradient + Border-Radius
- Author
- Links
- Made with
- About a code
- Corner-only Border
- Author
- Links
- Made with
- About a code
- 8bit border-image
- Author
- Links
- Made with
- About a code
- 8-bit Pixel Border
- Author
- Links
- Made with
- About a code
- Avatar Border Effect. 15 Declarations, 1 Element, No Pseudos
- Author
- Links
- Made with
- About a code
- Use SVG for border-image
- Author
- Links
- Made with
- About a code
- CSS Gradient Borders
- Author
- Links
- Made with
- About a code
- Borders & Gradients
- Author
- Links
- Made with
- About a code
- Multiple Border-Radius Values
- Author
- Links
- Made with
- About a code
- CSS Candy Stripe Border Using Clip-Path
- Author
- Links
- Made with
- About a code
- Offset and XOR Frame: Lively
- Author
- Links
- Made with
- About a code
- Full Screen Vintage Frame with Multiple Borders
- Author
- Links
- Made with
- About a code
- Gradient Border
- Author
- Links
- Made with
- About a code
- Pure CSS Circular Border Patterns
- Author
- Links
- Made with
- About a code
- Fitted Border Image the Easy Way
- Author
- Links
- Made with
- About a code
- Map-Inspired Border
- Author
- Links
- Made with
- About a code
- Blurred Border
- Author
- Links
- Made with
- About the code
- Magic Borders
- Author
- Links
- Made with
- About the code
- Interactive Button Border
- Author
12 приемов CSS для создания прекрасных сайтов
Подпишись на наш телеграм-канал TechRocks WEB-разработка?
Перевод статьи «12 CSS tips and tricks which help you to create an amazing websites».
CSS (аббревиатура расшифровывается как «каскадные таблицы стилей») это язык, использующийся для описания того, как должны отображаться HTML-элементы. Это одна из первых технологий, изучаемых будущими фронтенд- и веб-разработчиками. Знать основы CSS это просто «мастхэв».
И хотя кажется, что CSS нужен только для описания цветов элементов, их позиционирования и тому подобных вещей, на самом деле с его помощью можно также создавать анимации, «оживляющие» наши приложения и сайты. Вероятно, мало кто из нас уделил достаточное внимание CSS и изучил этот язык действительно глубоко. Поэтому многим пригодятся отдельные практические советы по применению CSS. В нашей статье мы собрали 12 таких полезных приемов.
1. Вертикальное выравнивание при помощи flex
Flexible Box Layout Model (или просто Flexbox) со времени своего появления приобрел большую популярность. И это неудивительно, ведь данный подход существенно облегчает позиционирование и выравнивание элементов. Применение flex (свойство flexbox) сделало вертикальное выравнивание быстрым и легким. Давайте рассмотрим пример кода для вертикального позиционирования при помощи flex.
Как видите, чтобы наш элемент-потомок оказался точно в центре родительского элемента, мы использовали свойства display: flex и align-items: center, justify-content: center.
2. Режимы наложения (смешивания)
При помощи CSS можно делать много интересных вещей, в частности, применять режимы наложения слоев. Дли применения режимов наложения есть два свойства: mix-blend-mode (определяет смешивание элементов, находящихся друг за другом) и background-blend-mode (определяет смешивание фоновых изображений). Давайте посмотрим, как это работает:
В этом примере мы задаем изображение и заголовок в виде текста. Текст это тот элемент, который смешивается с изображением. Мы использовали значение overlay (режим перекрытия), но есть еще 15 других значений, которыми можно воспользоваться (попробовать можно здесь).
А теперь давайте посмотрим пример с применением background-blend-mode:
В этом варианте мы видим, как фоновое изображение смешивается с цветом. Первое изображение — исходное, а второе — после применения режима смешивания.
3. Параллакс-скроллинг
Параллакс (Parallax) это очень распространенная вещь в современном веб-дизайне. Эффект основан на том, что скорость прокрутки фонового изображения отличается от скорости прокрутки контента. Давайте посмотрим, как этого можно достигнуть при помощи CSS:
В этом примере вы видите, что наш текст и фоновое изображение движутся по-разному. Мы использовали transformZ для ускорения одного элемента и замедления другого. Круто выглядит, правда?
4. Shape outside (придание элементу непрямоугольной формы)
Еще одна прекрасная фича, имеющаяся в CSS, но мало используемая, — свойство shape-outside. Давайте посмотрим, как это работает:
В этом примере вы видите, как текст обтекает круг. Мы установили значение свойства shape-outside как circle 50%, но можно также поставить треугольник, квадрат (базовые фигуры) или какое-то изображение. Обратите внимание на это свойство — оно стоит того, чтобы познакомиться с ним поближе!
5. Обрезка строки
Терпеть не могу, когда мой текст не вмещается в div. В JavaScript есть несколько способов справиться с этим, но знаете ли вы, что CSS тоже позволяет обрезать текст? Давайте посмотрим:
Вы видите, как CSS обрезает строку и ставит на месте обрезки троеточие. Для обрезки использовались свойства overflow: hidden, white-space: nowrap, а для троеточия — text-overflow: ellipsis.
6. Обрезка изображения при помощи clip path
Бывает, дизайнер подходит к делу чересчур креативно, и вам приходится изыскивать способы вписать изображение в заданную геометрическую форму, например, в треугольник. Для этого можно воспользоваться свойством clip-path:
В этом примере мы создали круг, обрезанный круг и многоугольник.
7. Полная высота и ширина
Если мы хотим, чтобы наше приложение или сайт подгонялись под размер зоны просмотра, на помощь приходят единицы измерения vh и vw. Vh означает 100% высоты зоны просмотра, а vw — 100% ширины зоны просмотра. Давайте посмотрим это на примере:
Здесь мы для нашего элемента (синего блока) установили ширину в 50vw, а высоту в 50vh. Это означает, что он должен занимать в ширину 50% от ширины и 50% от высоты зоны просмотра. Если вы попробуете изменить зону просмотра, вы увидите, как будут меняться размеры нашего элемента.
8. Фильтры изображений
Если поработать с изображениями, можно достичь очень интересных эффектов. CSS позволяет использовать большое количество фильтров, чтобы разработчики могли работать с графикой, не прибегая к Photoshop. Ну, например:
Здесь мы для одного изображения использовали 7 разных фильтров.
9. CSS-анимации
Анимации на сайте привлекают внимание пользователя, именно поэтому они так часто используются в веб-дизайне. Давайте посмотрим, как создавать их при помощи CSS:
В этом примере мы создали маленькую точку, которая меняет свою позицию и непрозрачность: при каждом перемещении непрозрачность снижается на 25%, пока не достигнет 100%. Затем процесс повторяется. Разумеется, можно также менять цвет и другие свойства элементов.
10. Вращение элементов
Еще один вид анимации, который можно сделать при помощи CSS, это вращение. Это прекрасный способ немного оживить элемент-загрузчик, логотип или изображение в галерее. Вот как это может выглядеть:
11. Маска
Если вам случалось заниматься графическим дизайном, вы должны знать, насколько полезными бывают маски. А ведь их можно применять не только в графическом редакторе, но и в CSS. Давайте посмотрим, как сделать маску изображения:
В этом примере мы создали маску в форме круга с градиентной заливкой. Также можно в качестве маски использовать SVG-графику, для этого нужно указать путь к файлу (URL).
12. Приближение при наведении курсора
При создании галерей изображений часто возникает необходимость как-то выделять изображения, на которые наведен курсор. Отличная идея — добавить эффект приближения. Вот как это работает:
В этом примере мы создали маленькую галерею изображений и добавили значение scale для наведения, чтобы изображение увеличивалось по сравнению с другими, когда на него попадает курсор.
Заключение
Всем нам хочется, чтобы наши сайты и приложения были красивыми и привлекали внимание пользователя. Но порой нам кажется, что создание анимации или маски для изображения займет много времени и окажется сложной задачей. Как видно из нашей статьи, это совсем не так уж трудно и даже удобнее, чем при работе в графическом редакторе.
43 CSS Borders
Collection of hand-picked free HTML and CSS border code examples from Codepen, GitHub and other resources. Update of May 2021 collection. 15 new items.
Related Articles
Author
Links
Made with
About a code
Animated Border Image
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Partial Gradient Border
Partial gradient border surrounding a circle image, which is done with a CSS conic gradient and a radial gradient mask.
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Gradient Border with Rounded Corners
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Background Border
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Patterned Borders
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Custom Dashed Border
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Colorful Border
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Gradient Border Effect
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Gradient Border + Transparent Background
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Border Linear-Gradient + Border-Radius
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Corner-only Border
Corner-only border (allows for corner rounding & gradient border).
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
8bit border-image
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
8-bit Pixel Border
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Avatar Border Effect. 15 Declarations, 1 Element, No Pseudos
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Use SVG for border-image
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
CSS Gradient Borders
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Borders & Gradients
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Multiple Border-Radius Values
You probably knew that you can set the border-radius of an element to 4 values, and using shorthand, it goes clock-wise from top, right, bottom, left. But did you know you can actually set up to 8 values if you separate them? Each corner can have 2 values as you can see in this example.
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
CSS Candy Stripe Border Using Clip-Path
Create a responsive candy stripe border using the clip-path property on each of the list items in a ul . Change the height, background color, and stripe color very easily.
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Offset and XOR Frame: Lively
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Full Screen Vintage Frame with Multiple Borders
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Gradient Border
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Pure CSS Circular Border Patterns
The border patterns are created with clip-path on a pseudo-element.
Compatible browsers: Chrome, Firefox, Opera, Safari
Author
Links
Made with
About a code
Fitted Border Image the Easy Way
Compatible browsers: Chrome, Firefox, Opera, Safari
Author
Links
Made with
About a code
Map-Inspired Border
Map-inspired border effect using stacked border & box-shadows . Single HTML element with CSS.
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About a code
Blurred Border
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About the code
Magic Borders
Try to have a dynamic and responsive table that has borders only between cells.
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari
Author
Links
Made with
About the code
Interactive Button Border
Button with an interactive border gradient.
Compatible browsers: Chrome, Edge, Firefox, Opera, Safari