Полностью игнорировать взлом звезды в CSSLint?
У меня есть CSS, как это:
.inline-block {
display: -moz-inline-stack;
display: inline-block;
*display: inline;
zoom: 1;
width: 100px;
}
Когда я запускаю CSSLint через
csslint --ignore=star-property-hack test.css
это все еще показывает эту ошибку:
width can't be used with display: inline.
width: 100px;
Есть ли какое-нибудь исправление?
2 ответа
Это правильно... когда дисплей встроенный, ширина не имеет значения. Зачем вам устанавливать отображение на inline вместо inline-block?
Тем не менее, попробуйте поместить свойство звезды в другой стиль с тем же селектором:
.inline-block {
display: -moz-inline-stack;
display: inline-block;
zoom: 1;
width: 100px;
}
.inline-block {
*display: inline;
}
Экран display: inline failover будет необходим, только если вам нужна поддержка IE6 (IE7 и более поздние версии понимают display: inline-block без проблем). Я бы порекомендовал следующее:
Если вам нужно поддерживать IE6:
Разделите хак на условную таблицу стилей, только для IE6:
В вашей основной таблице стилей:
.inline-block {
display: -moz-inline-stack;
display: inline-block;
width: 100px;
}
В ie6.css:
.inline-block {
display: inline;
zoom: 1;
}
Если вам не нужно поддерживать IE6:
Просто используйте код:
.inline-block {
display: -moz-inline-stack;
display: inline-block;
width: 100px;
}
И будь счастлив.