Испытание: UI-кит для формы [18/18] 100% Ваши замечания


#1

Привет академия!
Проверьте пожалуйста качество кода, что по вашему мнению можно сделать лучше?

body {
  width: 550px;
}

form {
  margin: 0 auto;
  padding: 20px;
  width: 400px;
  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;
  margin-right: -4px;
  width: 50%;
}

label {
  display: block;
  margin-top: 10px;
  margin-bottom: 5px;
}
input[type="radio"],
input[type="checkbox"]{
  display: none;
}

input[type="radio"]+label,
input[type="checkbox"]+label{
  color: #333333;
  vertical-align: middle;
}

[for*="radio"]::before,
[for*="checkbox"]::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 #a0a0a0;
}

[for*="radio"]::before {
  border-radius: 50%;
}

[for="radio-1"]::before,
[for="checkbox-1"]::before
{
  background-color: #1abc9c;
  box-shadow: 0 0 0 3px #1abc9c;
}

input[type="radio"]:checked + label,
input[type="checkbox"]:checked + label{
  color: #1abc9c;
}

[for="checkbox-3"]::before,
[for="radio-3"]::before
{
  box-shadow: 0 0 0 3px #cecece;
}

input[type="radio"]:disabled + label,
input[type="checkbox"]:disabled + label{
  color: #cecece;
}

input[type="text"] {
  width: 95%;
  height: 24px;
  margin-bottom: 10px;
  padding: 2px 5px;
  color: #000000;
  border: 2px solid #bdc3c7;
  border-radius: 5px;
  vertical-align: middle;
}

input:required {
  border-color: #e74c3c;
}

input:disabled {
  color: #bdc3c7;
  background-color: #f5f5f5;
  border-color: #ecf0f1;
}

input[pattern="[0-9]{8}"]{
  color: #c0392b;
  background-color: #f2a097;
  border-color: #e74c3c;
}

#2

При переключении кнопок, цвет не меняется. Лучше писать (хотя и тут меня опытные могут поправить):
input[type=“radio”]:checked + label::before,
input[type=“checkbox”]:checked + label::before {
background-color: #1abc9c;
box-shadow: 0 0 0 3px #1abc9c;
}
На третью кнопку аналогично, лучше прописать через “input[type=“radio”]:disabled”.