body {
width: 550px;
}
form {
width: 400px;
margin: 0 auto;
padding: 20px;
border-radius: 10px;
background-color: #ffffff;
box-shadow: 0 0 10px #cccccc;
}
fieldset {
padding: 10px;
border: 1px solid #34495e;
border-radius: 5px;
}
fieldset legend {
color: #34495e;
}
.half-width {
display: inline-block;
width: 50%;
margin-right: -4px;
}
label {
display: block;
margin-bottom: 5px;
margin-top: 10px;
}
input[type="checkbox"],
input[type="radio"] {
display: none;
}
input:not(:checked)+label {
vertical-align: middle;
color: #7f8c8d;
}
input[type="checkbox"]+label::before,
input[type="radio"]::before,
{
content: "";
display: inline-block;
width: 7px;
height: 7px;
margin-right: 8px;
vertical-align: middle;
border: 3px solid #ffffff;
box-shadow: 0 0 0 3px #bdc3c7;
}
input[type="radio"] + label::before {
border-radius: 50%;
}
input:checked {
background: #1abc9c;
box-shadow: 0 0 0 3px #1abc9c;
}
input:checked+label {
color: #1abc9c;
}
input[type="radio"]:disabled+label::before, input[type="checkbox"]:disabled+label::before {
box-shadow: 0 0 0 3px #ecf0f1;
}
input[type="checkbox"]:disabled+label,
input[type="radio"]:disabled+label
{
color: #ecf0f1;
}
input[type="text"] {
width: 95%;
height: 24px;
margin-bottom: 10px;
padding: 2px 5px;
color: #000;
border: 2px solid #bdc3c7;
border-radius: 5px;
vertical-align: middle;
}
input:required
{
border-color: #e74c3c;
}
input:disabled {
color: #bdc3c7;
background: #f5f5f5;
border-color: #ecf0f1;
}
input:invalid {
color: #c0392b;
background: #f2a097;
border-color: #e74c3c;
}
Вкладку “Различия” посмотрите.
у меня значки чекбоксов и радио пропадают и я не пойму как их возвратить
Вот этим свойством прятал, как делали те у кого 100%. хотя я так и не понял зачем это если этот Input исчезает
input[type="checkbox"],
input[type="radio"] {
display: none;
}
Мне кажется проблемы тут:
спасибо ) попозже гляну )
тут вы верно заметили. я метку забыл =(
а вот с первым нет не помогло
никак не поменяло результат
Вообще у меня checked - элементы выглядят как невыбранные. и никак не хотят приобретать зелёный цвет, хотя я прописываю им :
input:checked+label,
input:checked{
color: #1abc9c;
}
но цвет меняет только текст. а сами флаги у меня серые =/
хоть в конец этот код ставлю хоть в середине где он по умолчанию
Как вариант можно пользоваться поиском в в атрибуте “for” . Напр, label[for$=“1”] { }; Я в своем варианте только поиск и использовал для стилизации всех label 's
input:checked+label,
input:checked { color: #1abc9c; }
Первый селектор вы указали правильно, второй ни к чему. В самом описании испытания разъяснялось, что поля форм тяжело поддаются стилизации, потому намного проще скрывать их задав свойству display значение none, что вы и сделали:
input[type=“checkbox”],
input[type=“radio”] { display: none; }
Если вы скрыли поля форм, то смысла применять к ним стили нету, пока для них не будет изменено значение свойства display отличительное от none (в противном случае все стили, как и сами поля форм, будут скрыты от глаз наших). Потому селекторы типа input:checked и input[type=“radio”]::before тут лишние.
Цель задания - применить стили не к скрытым полям форм с типом checkbox и radio, а к тегам label, которые привязанные к данным полям по “id”, и к псевдоэлементам ::before, которые находятся перед label и собой заменяют скрытые radio- и checkbox-кнопки.