有没有办法不使用表格就完成这个HTML布局?
我正在开发一个非常动态的内容网站,它需要回流并适应不断变化的内容。其中一个主要要求是有一个页眉和页脚(也有不同长度和高度的动态内容),它们之间的内容总是占据它们之间剩余的任何空间 对于表,这很简单:有没有办法不使用表格就完成这个HTML布局?,html,css,Html,Css,我正在开发一个非常动态的内容网站,它需要回流并适应不断变化的内容。其中一个主要要求是有一个页眉和页脚(也有不同长度和高度的动态内容),它们之间的内容总是占据它们之间剩余的任何空间 对于表,这很简单: 标题 内容 页脚 表格{高度:100%;} tr.content{高度:100%;} 将这样一个表粘贴到任何容器中(如果我们说的是顶层页面布局,则包括视口),就这样,满足了需求,完成了工作 但就我的一生而言,我似乎找不到一种用CSS来实现这一点的方法。我本以为,在我第一次开始推广“整个HTML
标题
内容
页脚
表格{高度:100%;}
tr.content{高度:100%;}
将这样一个表粘贴到任何容器中(如果我们说的是顶层页面布局,则包括视口),就这样,满足了需求,完成了工作
但就我的一生而言,我似乎找不到一种用CSS来实现这一点的方法。我本以为,在我第一次开始推广“整个HTML内容”的15年多时间里,一个基本的东西,比如与其他东西相关的大小调整,到现在可能已经被细化到近乎完美的程度,但事实似乎并非如此
我错过什么了吗?使用一个表来布局页面感觉非常错误(当它涉及到内容的子表时更是如此),但是如果唯一的其他选项是JavaScript,那么我宁愿回到90年代的HTML
下面是一个代码笔,说明了我需要什么,通过上面显示的HTML+CSS实现:这里有两个选项:
divs
并使用表格布局CSS,例如
显示:表格代码>
显示:表格行代码>
显示:表格单元格代码>
正如Paul Redmond所提到的,…
flexbox
同样微不足道
div{
边框:1px纯灰;
利润率:25px;
}
.集装箱{
高度:250px;
宽度:350px;
显示器:flex;
弯曲方向:立柱;
}
标题,
页脚{
flex:0自动;
背景:浅灰色;
}
主要{
柔性生长:1;
背景:浅蓝色;
}
Lorem ipsum dolor sit amet,奉献精英。塞德,ab。
Lorem ipsum dolor sit amet,奉献精英。她是一个聪明的女人!一个自由的囚犯,一个被指控的人,一个被指控的人,一个化名ab,一个被指控的人!
键入以下代码并以.html格式保存。我想这会对你有帮助
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<style>
.div1 {
border: 3px solid #052d31;
position: relative;
clear: left;
float: left;
margin: 3px;
}
</style>
<div class="div1">
<p>change this text the div will resize dynamically</p>
</div>
<div class="div1">
<p>change this text</p>
</div>
</body>
</html>
.1分部{
边框:3px实心#052d31;
位置:相对位置;
清除:左;
浮动:左;
保证金:3倍;
}
更改此文本,div将动态调整大小
更改此文本
如果您知道页眉和页脚的高度,您可以始终使用calc()
作为中间框的高度(也称为#content{min height:calc(100%-footerheight-headerheight);}
)。将divs与display:table一起使用基本上是一样的-您仍然使用无关的标记来分隔布局。它们的名字差别不大。至于Flexbox,这是我一直缺少的东西。我最后一次听说“flex”是,正如我所相信的,IE实现正确CSS布局的尝试失败了,最终放弃了。谢谢,我去看看。