. Каждому разделу можно присвоить название с помощью элемента .
Контактная информация
Имя
E-mail
Рис. 1. Группировка полей формы
Чтобы сделать форму более понятной для пользователей, в поля формы добавляют текст, содержащий пример вводимых данных. Такой текст называется подстановочным и создаётся с помощью атрибута placeholder .
Обязательные для заполнения поля также необходимо выделять. До появления HTML5 использовался символ звездочки * , установленный возле названия поля. В новой спецификации появился специальный атрибут required , который позволяет отметить обязательное поле на уровне разметки. Этот атрибут дает указание браузеру (при условии, что тот поддерживает HTML5), указание не отправлять данные после нажатия пользователем кнопки отправить, пока указанные поля не заполнены.
Для изменения внешний вид текстового поля при получении фокуса, используется псевдокласс focus . Например, можно сделать фон текущего поля более темным или добавить цветную рамку , чтобы оно выделялось среди остальных:
Input:focus {
background: #eaeaea;
}
Ещё один полезный html5-атрибут — атрибут autofocus . Он позволяет автоматически установить фокус на нужном начальном поле для элементов и
Пример создания формы регистрации
HTML разметка
Примечание
action="form.php" — ссылка на файл обработчика формы. Создайте файл в кодировке UTF-8, закачайте его на сервер и замените action="form.php" на путь к файлу на вашем сервере.
Рис. 2. Внешний вид формы по умолчанию
Как видно из рисунка, каждый элемент формы имеет стили браузера по умолчанию. Очистим стили и оформим элементы формы.
Form-wrap {
width: 550px;
background: #ffd500;
border-radius: 20px;
}
.form-wrap *{transition: .1s linear}
.profile {
width: 240px;
float: left;
text-align: center;
padding: 30px;
}
form {
background: white;
float: left;
width: calc(100% - 240px);
padding: 30px;
border-radius: 0 20px 20px 0;
color: #7b7b7b;
}
.form-wrap:after, form div:after {
content: "";
display: table;
clear: both;
}
form div {
margin-bottom: 15px;
position: relative;
}
h1 {
font-size: 24px;
font-weight: 400;
position: relative;
margin-top: 50px;
}
h1:after {
content: "\f138";
font-size: 40px;
font-family: FontAwesome;
position: absolute;
top: 50px;
left: 50%;
transform: translateX(-50%);
}
/********************** стилизация элементов формы **********************/
label, span {
display: block;
font-size: 14px;
margin-bottom: 8px;
}
input, input {
border-width: 0;
outline: none;
margin: 0;
width: 100%;
padding: 10px 15px;
background: #e6e6e6;
}
input:focus, input:focus {
box-shadow: inset 0 0 0 2px rgba(0,0,0,.2);
}
.radio label {
position: relative;
padding-left: 50px;
cursor: pointer;
width: 50%;
float: left;
line-height: 40px;
}
.radio input {
position: absolute;
opacity: 0;
}
.radio-control {
position: absolute;
top: 0;
left: 0;
height: 40px;
width: 40px;
background: #e6e6e6;
border-radius: 50%;
text-align: center;
}
.male:before {
content: "\f222";
font-family: FontAwesome;
font-weight: bold;
}
.female:before {
content: "\f221";
font-family: FontAwesome;
font-weight: bold;
}
.radio label:hover input ~ .radio-control,
.radiol input:focus ~ .radio-control {
box-shadow: inset 0 0 0 2px rgba(0,0,0,.2);
}
.radio input:checked ~ .radio-control {
color: red;
}
select {
width: 100%;
cursor: pointer;
padding: 10px 15px;
outline: 0;
border: 0;
background: #e6e6e6;
color: #7b7b7b;
-webkit-appearance: none; /*убираем галочку в webkit-браузерах*/
-moz-appearance: none; /*убираем галочку в Mozilla Firefox*/
}
select::-ms-expand {
display: none; /*убираем галочку в IE*/
}
.select-arrow {
position: absolute;
top: 38px;
right: 15px;
width: 0;
height: 0;
pointer-events: none; /*активизируем показ списка при нажатии на стрелку*/
border-style: solid;
border-width: 8px 5px 0 5px;
border-color: #7b7b7b transparent transparent transparent;
}
button {
padding: 10px 0;
border-width: 0;
display: block;
width: 120px;
margin: 25px auto 0;
background: #60e6c5;
color: white;
font-size: 14px;
outline: none;
text-transform: uppercase;
}
/********************** добавляем форме адаптивность **********************/
@media (max-width: 600px) {
.form-wrap {margin: 20px auto; max-width: 550px; width:100%;}
.profile, form {float: none; width: 100%;}
h1 {margin-top: auto; padding-bottom: 50px;}
form {border-radius: 0 0 20px 20px;}
}
Файл form.php
" . "\r\n";
$headers .= "Bcc: ваш_email". "\r\n";
if(!empty($name) && !empty($sex) && !empty($email) && !empty($country) && filter_var($email, FILTER_VALIDATE_EMAIL)){
mail($email, $subject, $msg, $headers);
echo "Спасибо! Вы успешно зарегистрировались.";
}
?>
Примечание
В переменной $subject укажите текст, который будет отображаться как заголовок письма;
Ваше_имя — здесь вы можете указать имя, которое будет отображаться в поле «от кого письмо» ;
url_вашего_сайта замените на адрес сайта с формой регистрации;
ваш_email замените на ваш адрес электронной почты;
$headers .= "Bcc: ваш_email". "\r\n"; отправляет скрытую копию на ваш адрес электронной почты.
В формате данного урока создадим форму авторизации на CSS
, покажу, как подключать шрифтовые иконки, каким образом задавать прозрачность у элементов, задействуем в форме анимированные эффекты при наведение.
Каркас формы в HTML
Первым создаем каркас формы. Открываем заготовку html
и пропишем следующий код между тегами.
Создаем блок, который будет являться контейнер для формы. Присвоим ему класс .container
, в нем размещаем форму с input
Первый input
для ввода логина type="text" name="username" placeholder="Введите логин"
, второй input type="password" name="password" placeholder="Введите пароль"
принимает пароль и за ним кнопка submit
. Ниже размещаем надпись для восстановления пароля, сделаем ее простой ссылкой.
Описываем в CSS элементы формы
Затем оформим данные элементы формы. Создадим дополнительную директорию CSS в которой будем размещать файлы стилей. В ней создаем файл style.css
и подключаем его к нашей страничке.
Я предлагаю на задний фон поставить изображение, для этого создадим дополнительную директорию img
, и поместим в нее свое изображение. Подключаем картинку в style.css
для body
. Прописываем путь до картинки, выходим с текущей директории, заходим в папочку img
, и далее название картинки.
Body{
background-image: url("../img/bg.png");
}
A{
color: #fff;
}
a:hover{
text-decoration: none;
}
Предадим стили контейнеру с формой .container
. Зададим ширину в 450 пик., и временно установим высоту в 500 пик. Зададим цвет #182134
, и отцентрируем ее посередине экрана margin: 250px auto 0 auto;
. Текст в нутрии блока размещаем по центру, сверху сделаем отступ в 20 пик.
Container{
width:450px;
height: 500px;
background-color: #182134;
margin: 250px auto 0 auto;
text-align: center;
}
Оформим затем input
для ввода логина и пароля. Что бы не затронуть кнопку, отберем их по атрибутам text
и password
, указываем ширину в 300 пик. , высоту в 50 пик. Текст увеличиваем на 18 пик., сделаем отступы между ними в 25 пик., закруглим углы border-radius: 4px;
, текст сдвинем на 10 пик. влево.
Input,input{
width: 300px;
height:50px;
font-size: 18px;
margin-bottom: 25px;
border-radius: 4px;
padding-left: 10px;
}
Затем отцентруем inpyt
, для этого обернем их в дополнительный блок и присвоим класс .dws-input
. Сделаем перенос строки после кнопки, и вверху перед кнопкой вставим картинку с нашим логотипом. Для этого скопируем ее в папку img
, и пропишем к ней путь img src="img/men.png"
.
Далее опишем ее стили. Картинке присвоим ширину и высоту по 120 пик. , затем подымем ее чуть выше формы margin: -60px 0 30px 0;
, делаем об водку в 5 пик. border: 5px solid #1a394f;
, закругляем углы в 50%.
Container img{
width:120px;
height:120px;
margin: -60px 0 30px 0;
border: 5px solid #1a394f;
border-radius: 50%;
}
Теперь опишем стили кнопки. Присвоим ей класс .dws-submit
, и назначаем ей стили. Назначаем отступы, увеличим текст на 15 пик., делаем его белым, а фон кнопки синим, убираем об водку и сделаем в низу плашку, а также курсор Pointer
.
Dws-submit {
padding: 13px 30px;
margin: 5px 0 20px 0;
font-size: 15px;
color: #fff;
background-color: #2ca8c6;
border: none;
border-bottom: 4px solid #6ee9fd;
cursor: pointer;
}
Чтобы отцентровать инпуты и кнопку, поместим их отдельно каждый в свой блок. Опишем стили кнопке при наведении. Делаем плавный переход, цвет кнопки меняем на белый, а в тоже время шрифт будет меняться на темный.
Dws-submit:hover{
transition: all 0.5s;
background: #fff;
color: #2c536c;
}
Сделаем, сверху нашей формы синею плашку, box-shadow: 0 -5px 0 #3adbfd;
, и добавим ее к картинке box-shadow: 0 -5px 0 #3adbfd;
. Сделаем фон формы немного прозрачнее, для этого пропишем этот цвет в формате RGBA
.
Я пользуюсь сервисом
w3schools.com , спускаемся вниз до Color Picker
, в форму введем наш цвет и преобразуем его в RGB
. Копируем, вставляем в стиль контейнера.
Container{
width:450px;
height: 500px;
background-color: rgba(24, 33, 52, 0.7);
margin: 250px auto 0 auto;
text-align: center;
box-shadow: 0 -5px 0 #3adbfd;
}
.container img{
width:120px;
height:120px;
margin: -60px 0 30px 0;
border: 5px solid #1a394f;
border-radius: 50%;
box-shadow: 0 -5px 0 #3adbfd;
}
Для эффекта, закруглим нижние углы, для этого пропишем border-radius: 0 0 10px 10px;
.
Добавление шрифтовых иконок
Добавим иконки в виде шрифтов, переходим на сервис
fontawesome.io и скачиваем их к себе на компьютер. Распакуем архив, копируем папку fonts, в которой находятся шрифты, и копируем файл стилей в директории css. Затем подключаем стили к страничке.
Отберем иконки для наших инпутов, для этого переходим на страничку Icons
, первый подключим стиль для ввода логина, используем user
, копируем его код f007
, и описываем его в стилях при помощи псевдоэлемента.
Подключаем шрифты font-family: "FontAwesome";
,затем саму иконку, позиционируем ее абсолютно поля, увеличим ее на 30 пик, отцентруем и изменим цвет.
Dws-input::before{
font-family: "FontAwesome";
content: "\f007";
position: absolute;
font-size: 30px;
padding: 10px 0 0 7px;
color: #2c536c;
}
Немного подвинем текст в input - padding-left: 40px;
.
Отберем вторую иконку с названием lock
, копируем ее код f023
, и описываем ее стили.
Для этого отбираем второй элемент .dws-input:nth-child(2)::before{}
, и прописываем картинку content: "\f023
";.
Dws-input::before{
font-family: "FontAwesome";
content: "\f007";
position: absolute;
font-size: 30px;
padding: 10px 0 0 7px;
color: #2c536c;
}
.dws-input:nth-child(2)::before{
content: "\f023";
}
Dws-input:hover::before{
color: #319ebc;
transition: all 0.3s;
}
А также, стили наведение для инпутов.
Dws-input input:hover{
box-shadow: 0 0 6px 3px rgba(58, 219, 253, 0.35);
}
Для удобства обернем их в блок с классом .social
и опишем их стили. Изменим их цвет на белый, увеличим на 20 пик., сделаем шириной в 20 пик., и дадим отступы.
Dws-social i{
color: #fff;
font-size: 20px;
width: 20px;
padding: 10px;
}
Затем опишем стили при наведении. Сделаем белый блок, фон иконки изменим на темный, закруглим углы и при наведение отобразим курсор.
Social i:hover{
background-color: #fff;
color: #1a394f;
border-radius: 5px;
cursor: pointer;
}
Уберем высоту блока формы, которую задавали в самом начале, а в место ее добавим нижний отступ padding-bottom: 20px;
.
В принцыпе и все, получилась довольно симпатичная форма, которую можно подключить на сайт и использовать для авторизации.
Пробуйте сделать на примере данного урока что нибудь свое оригинальное, тренируйтесь, и не забывайте делится данным материалом.
Здравствуй, дорогой хабрадруг! В этом туториале мы научимся создавать две формы HTML5: форма входа и форма регистрации. Эти формы будут меняться друг с другом местами с помощью псевдо-класса CSS3 :target . Мы будем использовать CSS3 и шрифт с иконками. Идея этого демо в том, чтобы показать пользователю форму входа и предоставить ему ссылку “перехода” к форме регистрации.
В этом туториале я подробно расскажу о том, как создавать эффект как в Демо 1 . HTML
Здесь мы использовали несколько приемов HTML5. Например, элемент type=password
автоматически скрывает то, что пользователь печатает и заменяет символы точками или звездочками (зависит от браузера). Элемент type=email
позволяет браузеру проверить правильность формата email адреса . Кроме того, мы использовали параметр require=required
; браузеры, поддерживающие данный параметр не позволят пользователю отправить форму до тех пор, пока поле не заполнено, JavaScript здесь не требуется. Параметр autocomplete=on
будет автоматически заполнять некоторые поля. Мы также использовали замещающийся текст, который поможет пользователю при заполнении формы.Теперь о двух хитрых моментах. Вы наверное заметили две ссылки в начале формы. Этот ловкий прием позволит нашей формы вести себя правильно при работе с якорями (anchors).
Второй момент связан с применением шрифта с иконками. Мы будем использовать data-attribute , чтобы отобразить иконки. Устанавливая параметр data-icon=”icon_character”
с соответствующим символов в HTML, мы должны назначить лишь одно правило в CSS для установления стиля всех иконок. Подробнее об этом приеме можно почитать на сайте: 24 Ways: Displaying Icons with Fonts and Data- Attributes .
CSS
Для чистоты кода я пропущу базовые параметры (html, body и т.п.), но вы сможете найти их в исходных файлах. Повторяю, что я использую приемы CSS3, которые не будут работать во всех браузерах. Итак, давайте же приступим!Стилизуем формы, используя CSS3
Во-первых, давайте назначим нашим формам базовый стиль. #subscribe,
#login{
position: absolute;
top: 0px;
width: 88%;
padding: 18px 6% 60px 6%;
margin: 0 0 35px 0;
background: rgb(247, 247, 247);
border: 1px solid rgba(147, 184, 189,0.8);
box-shadow:
0pt 2px 5px rgba(105, 108, 109, 0.7),
0px 0px 8px 5px rgba(208, 223, 226, 0.4) inset;
border-radius: 5px;
}
#login{
z-index: 22;
}
Здесь мы назначим свойства для шапки:
/**** текст ****/
#wrapper h1{
font-size: 48px;
color: rgb(6, 106, 117);
padding: 2px 0 10px 0;
font-family: "FranchiseRegular","Arial Narrow",Arial,sans-serif;
font-weight: bold;
text-align: center;
padding-bottom: 30px;
}
/** На донный момент только webkit поддерживает background-clip:text; **/
#wrapper h1{
background:
-webkit-repeating-linear-gradient(-45deg,
rgb(18, 83, 93) ,
rgb(18, 83, 93) 20px,
rgb(64, 111, 118) 20px,
rgb(64, 111, 118) 40px,
rgb(18, 83, 93) 40px);
-webkit-text-fill-color: transparent;
-webkit-background-clip: text;
}
#wrapper h1:after{
content:" ";
display:block;
width:100%;
height:2px;
margin-top:10px;
background:
linear-gradient(left,
rgba(147,184,189,0) 0%,
rgba(147,184,189,0.8) 20%,
rgba(147,184,189,1) 53%,
rgba(147,184,189,0.8) 79%,
rgba(147,184,189,0) 100%);
}
Замечу, что сегодня только браузеры с webkit поддерживают background-clip: text
, поэтому мы сделаем полосатый фон только для webkit и привяжем его к заголовку H1. Так как параметр background-clip: text
работает только в Webkit браузерах, я решил работать только со свойствами webkit. Именно поэтому я разделил CSS на две части и использовал только градиент webkit. Однако вы не должны использовать лишь webkit на своих вебсайтах! Так, например, параметр -webkit-text-fill-color: transparent
позволяет нам иметь прозрачный фон, но только для браузеров webkit, все другие браузеры проигнорируют это свойство.
Мы также создали тонкую линию под заголовком с помощью элемента:after pseudo-class. Мы использовали градиент с 2px в высоту и уменьшили прозрачность по краям до нуля.
Теперь давайте позаботимся о полях ввода и придадим им приятный вид.
/**** advanced input styling ****/
/* placeholder */
::-webkit-input-placeholder {
color: rgb(190, 188, 188);
font-style: italic;
}
input:-moz-placeholder,
textarea:-moz-placeholder{
color: rgb(190, 188, 188);
font-style: italic;
}
input {
outline: none;
}
Во-первых, мы стилизуем поля и уберем обводку. Но будьте осторожны: обводка помогает пользователю понять, на каком поле он находится. Если же вы уберете ее, то нужно применить свойства:active и:focus.
/* все поля исключают submit и checkbox */
#wrapper input:not(){
width: 92%;
margin-top: 4px;
padding: 10px 5px 10px 32px;
border: 1px solid rgb(178, 178, 178);
box-sizing: content-box;
border-radius: 3px;
box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.6) inset;
transition: all 0.2s linear;
}
#wrapper input:not():active,
#wrapper input:not():focus{
border: 1px solid rgba(91, 90, 90, 0.7);
background: rgba(238, 236, 240, 0.2);
box-shadow: 0px 1px 4px 0px rgba(168, 168, 168, 0.9) inset;
}
Здесь мы использовали псевдо класс:not, чтобы стилизовать все поля, кроме чекбоксов. Кроме того, я решил убрать обводку и добавил свойства:focus и:active.
Теперь время веселиться: шрифт с иконками. Так как мы не можем использовать псевдо-классы:before и:after, мы добавим иконку в параметр label, а затем разместим в поле. Я буду использовать библиотеку fontomas . Вы можете сами сопоставить иконки с соответствующей буквой. Помните атрибут data-icon
? Именно в него нужно вставить букву. Я использовал data-icon=’u’
для логина, ‘e’ для email, ‘p’ для пароля. Как только я выбрал буквы, я скачал шрифт и использовал генератор шрифтов fontsquirrel для конвертации в формат, пригодный для @font-face.
@font-face {
font-family: "FontomasCustomRegular";
src: url("fonts/fontomas-webfont.eot");
src: url("fonts/fontomas-webfont.eot?#iefix") format("embedded-opentype"),
url("fonts/fontomas-webfont.woff") format("woff"),
url("fonts/fontomas-webfont.ttf") format("truetype"),
url("fonts/fontomas-webfont.svg#FontomasCustomRegular") format("svg");
font-weight: normal;
font-style: normal;
}
/** магический трюк! **/
:after {
content: attr(data-icon);
font-family: "FontomasCustomRegular";
color: rgb(106, 159, 171);
position: absolute;
left: 10px;
top: 35px;
width: 30px;
}
Вот собственно и все. Вам не требуется иметь отдельный класс для каждой иконки. Мы использовали параметр content: attr(data-icon)
, чтобы получить букву из атрибута data-icon. Таким образом, нам нужно лишь назначить шрифт, выбрать цвет и разместить иконку.
Теперь назначим правила для кнопки отправки формы.
/*стилизуем обе кнопки*/
#wrapper p.button input{
width: 30%;
cursor: pointer;
background: rgb(61, 157, 179);
padding: 8px 5px;
font-family: "BebasNeueRegular","Arial Narrow",Arial,sans-serif;
color: #fff;
font-size: 24px;
border: 1px solid rgb(28, 108, 122);
margin-bottom: 10px;
text-shadow: 0 1px 1px rgba(0, 0, 0, 0.5);
border-radius: 3px;
box-shadow:
0px 1px 6px 4px rgba(0, 0, 0, 0.07) inset,
0px 0px 0px 3px rgb(254, 254, 254),
0px 5px 3px 3px rgb(210, 210, 210);
transition: all 0.2s linear;
}
#wrapper p.button input:hover{
background: rgb(74, 179, 198);
}
#wrapper p.button input:active,
#wrapper p.button input:focus{
background: rgb(40, 137, 154);
position: relative;
top: 1px;
border: 1px solid rgb(12, 76, 87);
box-shadow: 0px 1px 6px 4px rgba(0, 0, 0, 0.2) inset;
}
p.login.button,
p.signin.button{
text-align: right;
margin: 5px 0;
}
Трюк заключается в том, чтобы использовать box-shadow, чтобы создать несколько рамок. Естественно, вы можете использовать лишь одну рамку, но также можно и несколько. Мы будем использовать параметр length для создания “фейковой” второй белой рамки, 3px в ширину, без размытия.
Теперь стилизуем чекбокс, здесь мы ничего необычного не сотворим:
/* стилизуем чекбокс "запомнить меня"*/
.keeplogin{
margin-top: -5px;
}
.keeplogin input,
.keeplogin label{
display: inline-block;
font-size: 12px;
font-style: italic;
}
.keeplogin input#loginkeeping{
margin-right: 5px;
}
.keeplogin label{
width: 80%;
}
Стилизуем подвал формы, используя множественные линейные градиенты, чтобы создать полосатый градиент.
P.change_link{
position: absolute;
color: rgb(127, 124, 124);
left: 0px;
height: 20px;
width: 440px;
padding: 17px 30px 20px 30px;
font-size: 16px ;
text-align: right;
border-top: 1px solid rgb(219, 229, 232);
border-radius: 0 0 5px 5px;
background: rgb(225, 234, 235);
background: repeating-linear-gradient(-45deg,
rgb(247, 247, 247) ,
rgb(247, 247, 247) 15px,
rgb(225, 234, 235) 15px,
rgb(225, 234, 235) 30px,
rgb(247, 247, 247) 30px);
}
#wrapper p.change_link a {
display: inline-block;
font-weight: bold;
background: rgb(247, 248, 241);
padding: 2px 6px;
color: rgb(29, 162, 193);
margin-left: 10px;
text-decoration: none;
border-radius: 4px;
border: 1px solid rgb(203, 213, 214);
transition: all 0.4s linear;
}
#wrapper p.change_link a:hover {
color: rgb(57, 191, 215);
background: rgb(247, 247, 247);
border: 1px solid rgb(74, 179, 198);
}
#wrapper p.change_link a:active{
position: relative;
top: 1px;
}
Сейчас вы видите, что у нас две приятные формы, но ведь мы хотим, чтобы отображалась только лишь одна из них. Пришло время анимации!
Создаем анимацию
Первое, что мы сделаем, мы спрячем вторую форму, назначив opacity на 0: #register{
z-index: 21;
opacity: 0;
}
Помните, что форма входа имеет параметр z-index: 22? Второй форме мы назначим этот параметр на 21, чтобы поставить его “под” форму входа.
Теперь самое интересное: меняем формы местами, используя псевдо класс:target. Вам нужно понять одну вещь по поводу:target: для перемещения мы будем использовать якоря. Нормальное поведение якоря - прыжок на определенный элемент страницы. Но мы не хотим этого, мы лишь хотим поменять формы местами. И тут приходит на помощь наш трюк с использованием двух ссылок в начале страницы. Вместо того, чтобы направить нас прямо на вторую форму, рискуя испытать эффект “прыжка”, мы придадим ссылкам параметр display: none
. Это поможет избежать прыжков. Я обнаружил этот трюк на сайте: CSS3 create (французский язык).
#toregister:target ~ #wrapper #register,
#tologin:target ~ #wrapper #login{
z-index: 22;
animation-name: fadeInLeft;
animation-delay: .1s;
}
Вот, что происходит: когда мы кликаем на кнопку Присоединиться
, мы направляемся на #toregister. Затем происходит анимация и лишь потом переходим на элемент #register. Мы используем анимацию под названием fadeInLeft
. Так как мы “прячем” форму, используя нулевую прозрачность, мы применим анимацию, которая будем постепенно появляться. Мы также изменили z-index, чтобы она появилась поверх другой формы. То же самое происходит для другой формы same happens for the other form.
Вот код для анимации. Мы использовали CSS3 animation framework от Dan Eden и адаптировали этот фреймворк под наш туториал.
Animate{
animation-duration: 0.5s;
animation-timing-function: ease;
animation-fill-mode: both;
}
@keyframes fadeInLeft {
0% {
opacity: 0;
transform: translateX(-20px);
}
100% {
opacity: 1;
transform: translateX(0);
}
}
Форма, которая “исчезает”, будет иметь анимацию затемнения влево:
#toregister:target ~ #wrapper #login,
#tologin:target ~ #wrapper #register{
animation-name: fadeOutLeftBig;
}
@keyframes fadeOutLeft {
0% {
opacity: 1;
transform: translateX(0);
}
100% {
opacity: 0;
transform: translateX(-20px);
}
}
Теперь вы можете использовать другие анимации от Dan Eden’ с помощью файла animate.css: просто измените класс.animate class и названия анимаций. Вы также обнаружите несколько других анимаций в конце файла animate-custom.css file.
Вот и все, друзья. Надеюсь вам понравился этот туториал!
Заметим, что в некоторых браузерах параметр background-clip: text
не поддерживается. В Internet Explorer 9 анимации не работают. В Internet Explorer 8 и ниже псевдо-класс:target pseudo-class не поддерживается, поэтому там этот эффект вообще работать не будет.
P.S.
Все замечания по поводу перевода с удовольствием приму в личку. Спасибо!
Теги:
Добавить метки
Поле для ввода пароля - обычное текстовое поле, вводимый текст в котором в зависимости от браузера отображается звёздочками или точками. Такая особенность предназначена для того, чтобы никто не подглядел вводимый пароль. Хотя вводимый текст и не показывается на экране, на сервер введённая информация передаётся в открытом виде без шифрования. Поэтому использование этого поля не обеспечивает безопасности данных и их можно перехватить.
Синтаксис создания следующий.
Атрибуты совпадают с атрибутами текстового поля и перечислены в табл. 1.
Поле для пароля нашло широкое применение на сайтах для авторизации пользователей и разграничения доступа к разделам сайта, где требуется подтвердить свои полномочия. В примере 1 показано, как создавать подобные поля.
Пример 1. Поле с паролем
Поле с паролем
В результате получим следующее (рис. 1).
Рис. 1. Вид поля с паролем
К полю с паролем применимы стилевые свойства задающие параметры цвета, фона, рамки и др. В примере 2 показано добавление фоновых картинок к полям формы. За основу возьмём стиль как для текстовых полей.
Пример 2. Добавление изображения в текстовое поле
Поле с паролем
Результат данного примера показан на рис. 2. Картинки добавляются в качестве фона, поэтому текст обязательно надо сдвинуть вправо через padding-left
, в противном случае он будет выводиться поверх изображения.
DesignMaz have collected list of the best CSS
/HTML Login Form Templates
for Web Designers, Developers that they can download and use to create a form
and most of them also have pre built HTML
validation features as well as some option jQuery validation (like the Login
/Register form
with pass meter below).
Free Responsive Flat Login Form Widget Template Free Responsive Flat New Login Form Widget Template for your websites. This Login form is designed using web technologies such as . It is completely free for download and can be use for your website or application sign in.
Forms Plus PopForms Flat Form with Bootstrap 3 This is a flat modern css3 design based on Booststrap 3 Framework. Responsive design with multi-color multipurpose web forms with pure css3.
Responsive Static Login Form HTML5 Template Free Responsive Static Login Form HTML5 CSS3 Template. You can download this HTML CSS Sign In Widget which can be used in you web projects.
Free Responsive Flat and Clean Login Form Template A Responsive Flat and Clean Login Form HTML Template designed using web technologies such as HTML5 and CSS3. You can free download and use for your website or application sign in.
Responsive Flat Purple Login Form Template A free Responsive Flat Purple Login Form Template built with HTML5, and CSS3. It is completely free for download and can be used straight away in your website or app.
Bootstrap login with social buttons Any Twitter Bootstrap
developer will love these free Responsive Bootstrap login form template
with social buttons . This Responsive Bootstrap login form template
is a Simple and Clean login form website template
base on Bootstrap 3.1.0 .
Easy to use the beautiful
and colorful css login form
for their own website. Simply insert into the existing CSS
file and enjoy the new CSS login form
. Created with rounded corners and nice look. It degrades nicely on older browsers, e.g. IE7 and IE8.
MetroLogin
is a Windows 8’s Login form
simulator that gives you this ability to make a login page for your website’s users or a login Page for your admin panel with a nice metro design.
Twitter Inspired Login Form – Jquery This is a drop down login form
similar to the one found on twitter. It comes complete with JavaScript
, CSS
and HTML
. Just like Twitters login
in form
it comes with enhancements like tooltips and a compact login form
and a clicked state button. It uses CSS3
to reduce the need for images and it degrades nicely in non CSS
browsers. It has great browser support and works in most modern browsers and even older ones like Internet explorer 6 and 7.
This is clean and pleasant designed login
& register HTML
user interface with error handling and social buttons.
Clean and usable login
& register form
is for every developer. It’s very fast pure CSS
. Error handling states, social buttons and forgotten password state is in there.
Zi-Popup Login Forms – Pure CSS3 Clean and usable login
& register form
is for every developer. It’s very fast CSS form
with jQuery validation. Error handling, social buttons and forgotten password handling is in there. Bring to live with a jQuery.
Minimalistic Login/Register Form + Live Validation Minimalistic Designed Login
, Register
and Forgot Template Forms
Pack. Packed with jQuery Live Validation, 7 color styles, 3 different form size options, title animation, custom checkbox, tooltip hints and jQuery Error Handling.
Summer Forms – Login And Registration Forms Summer Forms
are coupled login
and registration forms
having a set of impressing effects bundled with the bright modern design. The flexibility of these responsive forms
Summer Forms
may be become the first brick of your new web site or may be just a replacement of your old forms
. Every year the people get more exacting. The forms
are well thought out and may satisfy any user.
Not
so long ago, in order to achieve such effects, we used JS. But, now, CSS3
has all the necessary tools for making pop-up windows too.
Moon Forms – Login & Registration CSS Forms Moon Forms
are coupled login
and registration forms
having a modern design. The flexibility of these responsive forms
allows placing it into any area on your site (like a widget, like a popup window, like a standalone page).
Tab and form
developed by using only CSS3
, no javascript used. It is simple , clean and browser compatible. Very Easy to implement on any kind of website.
Features a large collection of form
styles that are used regularly in websites. You get Search Forms
, Login Forms
, Contact Forms
and General Form
styles. Further all these forms are available in Dark and Light coloured versions, so you get a total of 224 form styles! The login
, contact and general forms
also have focus and validation error styles defined in the css.
Form Framework
that strikes a balance between simplicity and elegance.CSS3 Responsive Forms
kit is simple, clean and fresh modern form
pack develop using bootstrap
.
Day/Night Login Page Day / Night Login Forms
– has the net and unique design. In the kit you get 2 folder with 6 forms. In two colors white and dark. As in the kit includes 4 style buttons. Thanks to the Day / Night Login Forms
developers can save time and money on developing the design. And the designers can see an example of the correct organization of layers.
Is a set of beautiful form
elements. It has large amount of customized items, different color schemes, responsive
grid system and allows you to create forms
of any complexity and for any needs: login
, registration
, contacts
, review
, order
, comment
, checkout
, etc.
Nice, clean and easy to use CSS3 login
panel which 3 included color schemes.
Golden Forms – Responsive CSS3 Form Framework Golden Forms
is a simple and professional Form
Framework that strikes a balance between simplicity and elegance. The framework is built with pure CSS3
+ HTML5
(no images), features a clean consistent Form UI
, responsive
12 column grid, and can be used to build any kind of Web Forms
quickly whether simple or complex, without special CSS
and coding knowledge.
– has a clean design and a powerfull 3D Flip Effect
which give user a unique exprince and a fast way to complete the process . In the kit you get 1 psd file with 3 forms styes.
Responsive HTML5 – jQuery Sign In – Registration Form Responsive HTML5 Sign In
/ Registration form
, with jQuery effects and CSS3
customization.