html - 如何拉伸(stretch)元素以填充具有固定宽度的两个元素之间的空间?

标签 html css

我想放置一个 <img>左边已知宽度和高度,一个<div>右边有已知的宽度和高度,还有一个<div>这将填满上述 <img> 之间的宽度和 <div>并根据内容灵活拉伸(stretch)高度。我如何没有 Javascript 实现这一点?

最佳答案

您可以使用 flexBox 模型来实现这一点,这是所有现代浏览器和一些带有 polyfill 的旧浏览器支持的 css3 模块。

这是一个例子。

.container {
    display: -webkit-box; /* OLD - iOS 6-, Safari 3.1-6 */
    display: -moz-box; /* OLD - Firefox 19- (buggy but mostly works) */
    display: -ms-flexbox; /* TWEENER - IE 10 */
    display: -webkit-flex; /* NEW - Chrome */
    display: flex; /* NEW, Spec - Opera 12.1, Firefox 20+ */

}

.fixedWidth {
   width: 100px;
   height: 100px;  
   margin-right: 20px
}

.flexibleDiv {
   -webkit-box-flex: 1;
    -moz-box-flex: 1;
    width: 80%;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1; 
}

http://fiddle.jshell.net/2y1c5deL/

这是一个 Flexbox polyfill

https://github.com/doctyper/flexie

关于html - 如何拉伸(stretch)元素以填充具有固定宽度的两个元素之间的空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26521866/

相关文章:

html - 如何使用鼠标滚轮跳转到 html 中的下一个或上一个 # 部分

html - CSS 并排对齐 UL

html - 如何为 IE 8 添加 CSS 背景图片?

CSS:具有渐变背景的链接(显示: block )内对齐的带有插入阴影的图像和文本

html - 移动设备上的网页错误

javascript - canvas..toDataURL 并上传

html - 添加到 Jekyll Minima 的 CSS,而不是完全覆盖它

html - 即使我正确引用了 Bootstrap ,也没有显示相机和视频图标

css - 当我将它上传到我的主机时,我的 css 不工作

css - 表格行的行间距