Я использую Zurb Foundation и имеет элемент с display: inherit !important;
. Я не могу (ну, по крайней мере, не должен) менять это правило, поскольку оно является частью Фонда.CSS-дисплей не наследуется при использовании float
Я хочу, чтобы этот элемент имел тот же дисплей, что и его родительский элемент, который равен inline-block
. Однако его родительский объект имеет свойство float: right
, которое, как представляется, не позволяет ребенку унаследовать его свойство display
.
Я написал простой пример: http://jsfiddle.net/ew1fkps2/1/
HTML:
<div class="a">
<div class="b">
<div class="c">
I should have display: inline-block;
</div>
</div>
</div>
CSS:
.a {
display: block;
}
.b {
float: right;
display: inline-block;
}
.c {
display: inherit !important;
}
Я попытался добавить многочисленные свойства предложенной в других потоках с аналогичными (но разные) проблемы (overflow: hidden
, position: relative
...), но ничего не зафиксировано.
Так что мой вопрос в том, почему это происходит и как его исправить?
Свойство 'float' вычисляет отображаемое значение' block' ... так что это то, что наследуется. Почему вы используете 'inline-block' на плавающем div? И чего вы пытаетесь достичь? - http://jsfiddle.net/ew1fkps2/3/ –
Я не знаю, понял ли я ваш вопрос ... вы хотите что-то вроде этого? http://jsfiddle.net/ew1fkps2/2/ – Nick
@Paulie_D Я хочу, чтобы '.c' div имел' display: inline-block', так как на моем сайте есть другие div, рядом с которыми я хочу отображать на той же линии. С 'display: block' они (очевидно) отображаются ниже друг друга. Я хочу что-то точно такое, как @ user3760661, но без использования чего-то взломанного, как '! Important' (если это возможно, конечно). –