взломанный котопрофайл. Как свойство испорченное с помощью <style> исправилось без important?


#1

В html c помощью style были изменены свойства .foto span .В CSS , по теории, такое можно исправить только с помощью !important. Эти свойства в CSS заданы в .profile .button . Но important я там не ставил, а они сработали правильно! что я не так понял?
html,
body {
margin: 0;
padding: 0;
}

body {
width: 550px;
height: 300px;
font-size: 12px;
font-family: Tahoma, Arial, sans-serif;
}

.profile {
padding: 5px 10px;
}

.profile img {
display: block;
padding: 10px;
border: 2px solid #34495e;
border-radius: 8px;
}

.profile .photo {
float: left;
width: 152px;
}

.profile .info {
float: left !important;
width: 368px !important;
margin-left: 10px !important;
}

.info h2 {
margin: 0 !important;
padding: 10px !important;
font-weight: normal;
font-size: 12px;
color: #ffffff;
background: #34495e !important;
border-radius: 4px;
}

.fact {
padding: 10px;
background: white !important;
}

.fact:nth-child(odd) {
background: #ecf0f1 !important;
}

.fact::after {
content: “”;
display: table;
clear: both;
}

.fact .title {
float: left;
width: 120px;
text-align: right;
color: #7f8c8d !important;
}

.fact .value {
margin-left: 140px;
color: #34495e !important;
}

.albums {
margin-top: 5px;
}

.albums img {
float: left;
margin-right: 5px !important;
}

.albums img:last-child {
margin-right: 0 !important;
}

.profile .button {
display: block;
height: 30px;
margin: 5px 0;
line-height: 30px;
text-align: center;
color: #ffffff;
border-radius: 4px;
}

.stroke {
background: #3498db !important;
}

.feed {
background: #2ecc71 !important;
}

.startle {
background: #e74c3c !important;
}


#2

!important надо использовать только для переопределения свойств заданных с помощью атрибута style, НЕ тега. Остальные свойства можно переопределить увеличивая специфичность правил.


#3

спасибо , понял. Теперь у меня в коде только 2 !important . совсем без них наверно не получится, ведь в html присутствует атрибут style