gpt4 book ai didi

CSS:3 个非典型包装的 div

转载 作者:太空狗 更新时间:2023-10-29 16:43:21 25 4
gpt4 key购买 nike

我正在尝试实现一些非典型的 div 行为,所以我不确定这是否可行。

我有三个水平相邻的 div:A、B 和 C(从左到右)。当浏览器调整大小时,或者如果用户的浏览器窗口太小,我希望 div B 低于 div A,而不是 div C 低于 div A 的典型行为。

此代码演示了典型行为:

<!DOCTYPE HTML>
<html>
<head>
<title>
Title
</title>
<style type="text/css">
.box {
display: inline-block;
margin: 4px;
background: #ccc;
width: 200px;
}
</style>
</head>
<body>
<div class="box" style="height: 200px;">div a</div>
<div class="box" style="height: 300px;">div b</div>
<div class="box" style="height: 500px;">div c</div>
</body>
</html>

http://jsfiddle.net/P5xLx/

当我将 div A 和 B 放在一个表格单元格中,将 div C 放在另一个表格单元格中时,我可以让 div B 低于 div A。唯一的问题是包含这两个 div 的左侧表格单元格确实不会折叠到两个 div 的宽度,因此 div A 和 B 与 div C 之间仍然存在间隙。此代码显示了该行为:

<!DOCTYPE HTML>
<html>
<head>
<title>
Title
</title>
<style type="text/css">
.box {
display: inline-block;
margin: 4px;
background: #ccc;
width: 200px;
}
</style>
</head>
<body>
<div style="display: table;">
<div style="display: table-row;">
<div style="display: table-cell;">
<div class="box" style="height: 200px;">div a</div>
<div class="box" style="height: 300px;">div b</div>
</div>
<div style="display: table-cell;">
<div class="box" style="height: 500px;">div c</div>
</div>
</div>
</div>
</body>
</html>

http://jsfiddle.net/cncgs/

有没有办法让左边的表格单元格占据两个堆叠的 div 的宽度,或者也许有其他一些根本不涉及表格的方法来完成这个。基本上,我只需要找到一种方法,让 div C 在 B 低于 A 时坐在 A 和 B 旁边。我试图找到一个 css 解决方案并避免使用 javascript 解决方案,例如计算 A 的宽度和 B 并将其与左侧表格单元格的宽度进行比较。

编辑 在上面的示例中,宽度为 200px,但在实际实现中,200px 是可变宽度,具体取决于用户提交的内容。我正在寻找可以处理可变宽度列的解决方案。

最佳答案

这件衣服怎么样?使用媒体查询更改前两个 div 的容器宽度:

<!DOCTYPE HTML>
<html>
<head>
<title>Title</title>

<style type="text/css">
.box {
display: block;
margin: 4px;
background: #ccc;
width: 200px;
float:left;
}
.leftCol{width:416px; float:left}

@media screen and (max-width: 1000px){
.leftCol{width:208px;}
}
</style>
</head>

<body>
<div class="leftCol">
<div class="box" style="height: 200px;">div a</div>
<div class="box" style="height: 300px;">div b</div>
</div>
<div class="box" style="height: 500px;">div c</div>
</body>
</html>

显然,宽度会根据您正在构建的内容而有所不同。

关于CSS:3 个非典型包装的 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7034139/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com