gpt4 book ai didi

html - 具有空间填充元素的组合 HTML 布局

转载 作者:太空宇宙 更新时间:2023-11-04 15:15:26 24 4
gpt4 key购买 nike

我正在尝试使用 HTML/CSS 完成布局。目标是这样的: layout

此布局中的某些元素具有非固定大小。左侧区域具有固定宽度,页脚具有固定(内容匹配)高度。左边的列表应该扩展它的高度,页脚中的文本它的宽度和 Canvas 的两个尺寸,这样整个浏览器页面都会被填满,但不会导致任何滚动条出现。哦,B 代表按钮,但我想这并不重要。

我看过一些示例 ( this ) 和引用资料 ( this ) 并试图从中学习,但我无法按照自己的方式获得它。我所做的更接近的尝试之一是:

<html><body style="margin: 0; padding: 0;">
<div style="position: absolute; background: #afa; top: 0px; bottom: 0px; left: 0; right: 0px;">
<div style="position: absolute; background: #afa; top: 0px; bottom: 0px; left: 0; width: 240px;">
<input style="width: 240px" id="selectedPosition"></input>
<select style="position: relative; width: 240px; height: 100%;" id="points" multiple="multiple"></select>
<div style="position: relative; background: #afa; left: 0; width: 240px;">
<input style="width: 80px" type="button" value="Add"></input><!--
--><input style="width: 80px" type="button" value="Up"></input><!--
--><input style="width: 80px" type="button" value="Down"></input>
</div>
</div>
<div>
<div><input style="position: absolute; bottom: 0px; left: 0px; width: 100%"></input></div>
<div><input style="position: absolute; bottom: 0px; right: 0px;" type="button" value="Button 4"></input></div>
</div>
<div style="position: absolute; background: #aaf; height: 100%; left: 240px;top: 0px;right: 0px; overflow: auto;"></div>
</div>
</body></html>

这里的问题是底部元素和右下角的按钮被尺寸扩展元素覆盖。我可能可以用固定的尺寸或边距来解决这个问题,但我希望以“正确”的方式完成它。

另一种方法是使用跨行跨列的 4x5 表格,但我感到更加困惑,很快就放弃了。

我对使用 HTML/CSS 进行布局相当陌生,因此尽管有实际的解决方案,但在这件事上帮助我完成工作的任何“傻瓜”资源也值得赞赏。

更新

查看链接和 Fico 的回答后。然而,最接近的尝试是 this .问题是,当宽度/高度设置为 100% 时,列表和底部文本都与相应的按钮重叠(在 jsfiddle 示例中,为了演示目的,我使用了较低的数字)。作为旁注,给定示例中的列表根本没有垂直延伸。当使用我的本地文件时,它确实如此。

我看到的所有使用固定页脚和高度填充列的示例都为页脚使用了一些固定大小的高度,然后将其作为边距负应用,但我的页脚应该只是包裹它的内容。有没有办法设置一个规则“一直延伸到下一个元素”?

最佳答案

首先对内容使用标记,对样式使用 CSS。你会工作得更干净,麻烦更少。包含这么多 标签而不是使用外部 CSS(或最终嵌入到文档的 HEAD 中)并不是一个好习惯

我看不像,你这里需要这么多的绝对定位

确定你设计中的大区域(如下图) enter image description here

第一印象是你有一个 aside 列,在正常文档流中的一些元素的左侧宽度和它底部的三个按钮 float 在 div 中

Canvas 可以在这个旁边的左边或右边 float aside 和 canvas 都包含在 mainContainer div 中。

底部的文本和按钮可以集成在页脚中,按钮可以随意向右或向左浮动

灵活的解决方案易于检测。为您的 Canvas 使用一些 min with 属性,并可能在旁边使用一些固定宽度。

关于html - 具有空间填充元素的组合 HTML 布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15038233/

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