2

jsfiddle

.outer当窗口被调整为比 s 内容更窄时,我想阻止改变形状/大小,如果可能的话,.outer只直接应用样式。.outer

HTML:

<div class='outer'>
    <div class='inner' style='background:#f00'>
    </div>
    <div class='inner' style='background:#0f0'>
    </div>
    <div class='inner' style='background:#00f'>
    </div>
</div>

CSS:

.outer, .inner{
    display: inline-block;
    position: relative;
    float: left;
    margin: 0;
    border: 0;
    padding: 0;
    overflow: visible;
}

.outer{
    /*what to put in here*/
}

.inner{
    width:50px;
    height:50px;
}

在 jsfiddle 中,如果您将结果面板的大小调整为更薄,您会看到蓝色被推到下一行,然后是绿色方块,我希望外部保持其原始形状/大小,以便三个.inners 保持它们的职位。

4

2 回答 2

5

设置容器的最小宽度

使用min-width物业

.outer{
    min-width:150px;
}

jsFiddle Demo


使用内联块显示功能

一种更灵活的方法是使用 和 等属性word-spacingwhite-space利用inline-block显示:

.outer{
    white-space: nowrap;
    word-spacing: -1em;
}

jsFiddle Demo

于 2013-08-31T12:17:24.663 回答
1

这不是“仅将样式直接应用于.outer”。但这是另一种选择。摆脱float: left、 更改widthmin-width和 添加display: table-cellon.inner会产生所需的结果。

CSS

.outer, .inner {
    display: inline-block;
    position: relative;
    margin: 0;
    border: 0;
    padding: 0;
    overflow: visible;
}
.inner {
    min-width:50px;
    height:50px;
    display: table-cell;
}

这里展示了jsFiddle这种方法。

于 2013-08-31T12:44:05.497 回答