我希望在调整窗口大小时使.outer
更改形状/大小,使其比.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中如果你将结果面板调整为更薄,你会看到蓝色被推到下一行,接着是绿色正方形,我希望外面保持其原始形状/大小所以这三个.inner
维持他们的立场。
答案 0 :(得分:3)
为容器设置最小宽度
使用min-width
属性
.outer{
min-width:150px;
}
使用内联屏幕显示功能
更灵活的方法是使用word-spacing
和white-space
等属性,利用inline-block
显示:
.outer{
white-space: nowrap;
word-spacing: -1em;
}
答案 1 :(得分:1)
这不是“仅将样式直接应用于.outer
”。但这是另一种选择。摆脱float: left
,将width
更改为min-width
并在display: table-cell
上添加.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 。