Блог
Главная » Другие » Креативные стили вэб-типографии Часть2
01:44


Пример 5





Пятый пример будет иметь эффект 3D, который придаст некую глубинку тексту.

Code

<h2 class="cs-text" id="cs-text">Disarmer</h2>


Поскольку, мы хотим , чтобы каждая буква была в некоей рамке, сначала применим lettering.js, а затем заменим созданную групп на другую:
Code

$("#cs-text").lettering().children('span').wrap('<span>');
</span>


Давайте определим ширину/высоту и отступы от основной оболчки:
Code

.cs-text {
  position: relative;
  width: 960px;
  height: 100px;
  margin: 100px auto;
  cursor: default;
}


Первый слой пролета будет иметь перспективу и закреплен:
Code

.cs-text > span {
  perspective: 200px;
  float: left;
  position: relative;
}


Так как мы будем вращать и переводить внутренние пролеты, мы нуждаемся в определенном порядке наложения на перспективу контейнеров (от центра к краям):
Code

.cs-text > span:first-child,
.cs-text > span:last-child {
  z-index: 1;
}
   
.cs-text > span:nth-child(2),
.cs-text > span:nth-child(7){
  z-index: 2;
}
   
.cs-text > span:nth-child(3),
.cs-text > span:nth-child(6){
  z-index: 3;
}
   
.cs-text > span:nth-child(4) {
  z-index: 5;
}
   
.cs-text > span:nth-child(5){
  z-index: 4;
}


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

.cs-text span span {
  display: block;
  background: url(../images/scratch-texture.png), linear-gradient(to right, #00b7ea 0%,#009ec3 100%);
  box-shadow:  
  -1px 0 2px rgba(255,255,255,0.4),
  -2px 0 0 #00adda,  
  -2px 7px 9px rgba(0, 0, 0, 0.5);
  color: #fff;
  text-shadow: -1px -1px 2px rgba(0,0,0,0.6);
  width: 120px;
  height: 150px;
  font-weight: 700;
  line-height: 150px;
  font-size: 140px;
  text-align: center;
  text-transform: uppercase;
}


Последние четыре буквы будут иметь обратный градиент, тень обертки и тень текста:
Code

.cs-text > span:nth-child(n+5) span {
  background: url(../images/scratch-texture.png), linear-gradient(to right, #009ec3 0%,#00b7ea 100%);
  box-shadow:  
  1px 0 2px rgba(255,255,255,0.4),
  2px 0 0 #00adda,  
  -2px 7px 9px rgba(0, 0, 0, 0.5);
  text-shadow: 1px 1px 2px rgba(0,0,0,0.6);
}


Теперь мы будем переводить внутренние пролеты на Z-index и вращать их, чтобы создать эффектеность. Каждый из них будет иметь различные значения, поэтому мы будем ориентироваться на них с соответствующим :nth-child селектора:
Code

.cs-text > span:nth-child(4) span{
  transform: translateZ(40px) rotateY(40deg);
}
   
.cs-text > span:nth-child(5) span{
  transform: translateZ(40px) rotateY(-40deg);
}
   
.cs-text > span:nth-child(3) span{
  transform: translateZ(30px) rotateY(30deg);
}
   
.cs-text > span:nth-child(6) span{
  transform: translateZ(30px) rotateY(-30deg);
}
   
.cs-text > span:nth-child(2) span{
  transform: translateZ(20px) rotateY(20deg);
}
   
.cs-text > span:nth-child(7) span{
  transform: translateZ(20px) rotateY(-20deg);
}
   
.cs-text > span:first-child span{
  transform: translateZ(10px) rotateY(10deg);
}
   
.cs-text > span:last-child span{
  transform: translateZ(10px) rotateY(-10deg);
}


Давайте перейдем к span'ам и переведем их на x-axis:
Code

.cs-text > span:nth-child(-n+4) {
  transform: translateX(14px);
}
   
.cs-text > span:nth-child(n+5) {
  transform: translateX(-14px);
}


И это все, у нас есть аккуратный эффект 3D текста!

Пример 6





Этот пример вдохновил немного на оригами. Это будкт несколько полупрозрачных пролетов, которые мы будем вращать и косых. При наведении, они будут перенаправлены в начальное положение так, что все они выглядят как ящики.:
Code

<h2 class="cs-text" id="cs-text">Bird</h2>


Нам нужно вставить текст в span:
Code

$("#cs-text").lettering().children('span').wrap('<span>').parent().prepend('<span></span><span></span><span></span>');
</span>

Давайте добавим ширину, высоту, отступы и очистим выравнивание:
[code]
.cs-text {
  width: 600px;
  margin: 70px auto 30px;
}
   
/* Micro clearfix hack by Nicolas Gallagher http://nicolasgallagher.com/micro-clearfix-hack/ */
.cs-text:before,
.cs-text:after {
  content: " ";
  display: table;
}
   
.cs-text:after {
  clear: both;
}
/* end clearfix hack */


Все span'ы будут отображаться в виде блока элементов:
Code

.cs-text span{
  cursor: default;
  display: block;
  position: relative;
}


Первый слой пролета будет иметь высоту и ширину 130 пикселей и отступы полей 10 пикселей:
Code

.cs-text > span {
  float: left;
  width: 130px;
  height: 130px;
  margin: 10px;
}


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

.cs-text span span {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(255,255,255,0.3);
  box-shadow: 1px 1px 2px rgba(0,0,0,0.2);
  transition: all 0.3s ease-in-out;
}


Добавим градиент как фон, который мы будем имитировать тонким слоем:
Code

.cs-text span span:last-child{
  font-size: 70px;
  line-height: 130px;
  font-weight: 400;
  text-transform: uppercase;
  text-align: center;
  color: rgba(255,255,255,0.8);
  font-family: 'Michroma', sans-serif;
  text-shadow:  
  1px 1px 1px rgba(0,0,0,0.1),
  -1px -1px 1px rgba(0,0,0,0.1),
  5px 5px 0 rgba(216,65,40,0.6),
  -5px -5px 0 rgba(37,166,164,0.6);
  background:  
  linear-gradient(
  45deg,  
  rgba(249,249,249,0.08) 0%,
  rgba(234,234,234,0.5) 49%,
  rgba(255,255,255,0.51) 50%,
  rgba(244,244,244,0.94) 100%
  );
}


Давайте добавим некоторые произвольные повороты и наклоны преобразований:
Code

.cs-text > span:nth-child(odd) span:first-child {
  transform: rotate(5deg) skewY(-14deg);
}
   
.cs-text > span:nth-child(even) span:first-child {
  transform: rotate(-35deg) skewY(-5deg);
}
   
.cs-text > span:nth-child(odd) span:nth-child(2) {
  transform: rotate(45deg) skewY(-10deg);
}
   
.cs-text > span:nth-child(even) span:nth-child(2) {
  transform: rotate(27deg) skewY(-12deg);
}
   
.cs-text > span:nth-child(odd) span:nth-child(3) {
  transform: rotate(45deg);
}
   
.cs-text > span:nth-child(even) span:nth-child(3) {
  transform: rotate(30deg);
}


При наведении мы будем устанавливать все пролеты в положение 0 и применять различные text-shadow в текст, чтобы создать хороший эффект:
Code

#cs-text > span:hover span {
  transform: rotate(0deg) skewY(0deg);
  text-shadow:
  1px 1px 0 rgba(216,65,40,0.1),
  -1px -1px 0 rgba(37,166,164,0.1);
}


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

Пример 7





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

<h2 class="cs-text">
  <span>k</span>
  <span>n</span>
  <span>u</span>
  <span>.</span>
  <span>c</span>
  <span>o</span>
  <span>m</span>
  <span></span>
</h2>


Давайте определим некоторые свойства текста, а ширину:
Code

.cs-text {
  font-size: 50px;
  text-transform: uppercase;
  margin: 80px auto 0 auto;
  width: 580px;
  height: 100px;
  padding-left: 20px;
  font-family: 'McLaren', Arial;
  font-weight: 400;
  position: relative;
}
   
/* Micro clearfix hack by Nicolas Gallagher http://nicolasgallagher.com/micro-clearfix-hack/ */
.cs-text:before,
.cs-text:after {
  content: " ";
  display: table;
}
   
.cs-text:after {
  clear: both;
}
/* end clearfix hack */


span будет плавающим. Мы добавим эффект переходов:
Code

.cs-text span {
  cursor: default;
  display: block;
  float: left;
  border-radius: 50%;
  width: 100px;
  height: 100px;
  line-height: 100px;
  text-align: center;
  margin: 0 0 0 -20px;
  color: rgba(255,255,255,0.95);
  text-shadow: 0 -1px 1px rgba(0,0,0,0.1);
  transition: all 0.4s ease-in-out;
}


Пролеты будут чередоваться в цвете фона и мы добавим тонкую текстуру к ним:
Code

.cs-text span:nth-child(odd) {
  background: rgba(118,176,204, 0.8) url(../images/noise.png);  
}
   
.cs-text span:nth-child(even) {
  background: rgba(58,126,162, 0.8) url(../images/noise.png);  
}


Все пролеты будут перемещены в центр. Мы применим преобразование дважды: первый представляет собой процент, что мы знаем, то есть у первого пролета должно быть 3 позиции, это 300%, а второе преобразование для компенсации разницы:
Code

.cs-text span:nth-child(1) {
  transform: translate(300%) translate(-60px);
}
   
.cs-text span:nth-child(2) {
  transform: translate(200%) translate(-40px);
}
   
.cs-text span:nth-child(3) {
  transform: translate(100%) translate(-20px);
}
   
.cs-text span:nth-child(5) {
  transform: translate(-100%) translate(20px);
}
   
.cs-text span:nth-child(6) {
  transform: translate(-200%) translate(40px);
}
   
.cs-text span:nth-child(7) {
  transform: translate(-300%) translate(60px);
}


Все пролеты, кроме последнего будет иметь прозрачность 0:
Code

.cs-text span:not(:last-child) {
  opacity: 0;
  pointer-events: none;
}


Последний пролет специального диапазона логотип. Мы дадим ему другой фон и расположим его абсолютно в центре главной оболочки:
Code

.cs-text span:last-child{
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -50px;
  z-index: 100;
  background: url(../images/codrops_logo.jpg) no-repeat center center;
}


При наведении, все пролеты будут установлены обратно в их естественное положение, и мы увеличим значение не прозрачности до 1:
Code

.cs-text:hover span:not(:last-child){
  transform: translate(0%);
  opacity: 1;
}


Логотип службы будет масштабироваться немного вверх, и исчезать:
Code

.cs-text:hover span:last-child {
  opacity: 0;
  transform: scale(1.4);
}


Пример 8





В последнем примере мы просто поиграем с тенями текста.
Code

<h2 class="cs-text">Time for Thyme</h2>


Мы будем использовать lettering.js, чтобы обернуть все слова в пролетах:
Code

$(".cs-text").lettering('words');


Добавим ширину основного заголовока и в центре ее:
Code

.cs-text {
  width: 660px;
  margin: 120px auto 30px;
  cursor: default;
  transform: skewY(-12deg);  
  text-align: center;
}


Пролеты будут дисплейными блоками, и мы добавим верхнее поле, чтобы установить их:
Code

.cs-text span {
  display: block;
  color: #fff;
  font-weight: 400;
  text-transform: uppercase;
  margin-top: 6px;
  font-family: 'Stint Ultra Expanded', cursive;
}


Первое слово будет иметь размер шрифта 100 пикселей и большим расстоянием между буквами:
Code

.cs-text span:first-child {
  font-size: 100px;
  letter-spacing: 96px;
  text-shadow: 6px 6px 0px rgba(255,255,255,0.3);
}


Второе слово будет курсивным шрифтом с засечками, и мы дадим ему темный цвет:
Code

.cs-text span:nth-child(2) {
  font-family: Georgia, serif;
  font-weight: 400;
  text-transform: none;
  font-style: italic;
  line-height: 60px;
  font-size: 67px;
  color: #392f2c;
  text-shadow: 1px 1px 1px rgba(255,255,255,0.3);
  position: relative;
}


В стилях псевдо-классы :before :after создадут две линию, слева и справа:
Code

.cs-text span:nth-child(2):before,
.cs-text span:nth-child(2):after {
  content: '';
  width: 240px;
  height: 2px;
  background: #392f2c;
  position: absolute;
  top: 50%;
  margin-top: -1px;
  box-shadow: 0 1px 0 rgba(255,255,255,0.2);
}
   
.cs-text span:nth-child(2):before {
  left: 0px;
}
   
.cs-text span:nth-child(2):after {
  right: 0px;
}


Последнее слово будет иметь несколько теней текста, чтобы создать кучу эффектов. Хитрость заключается в том, чтобы выбрать между цветом текста и фоном тела, который является темно-коричневый в нашем случае:
Code

.cs-text span:nth-child(3) {
  font-size: 130px;
  text-shadow:  
  2px 2px 0 #645f59,
  4px 4px 0 #fff,
  6px 6px 0 #645f59,
  8px 8px 0 #fff,
  10px 10px 0 #645f59,
  12px 12px 0 #fff,
  14px 14px 0 #645f59,
  16px 16px 0 #fff,
  18px 18px 0 #645f59,
  20px 20px 0 #fff,
  22px 22px 0 #645f59,
  24px 24px 0 #fff;  
}


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

Категория: Другие

Вы не авторизованы, по-этому вы не можете скачивать файлы к материалу, просматривать демо, читать и оставлять комментарии!

Knu.com
  • Опросик
  • Зайдете ли вы к нам еще?