我发现自己使用下面的布局整个堆,但它令人讨厌,它不是很有语义。没有额外'divs'的CSS布局
http://plnkr.co/edit/qMx9S0?p=preview
我真的很想为
<body>
<h1>Hi</h1>
<nav> Nav content</nav>
<main> Application</main>
</body>
通过我的实验有没有办法做到这一点不烦人“div容器”。最糟糕的是,这种模式可能会进一步发生在应用程序内部,(用说节代替main)。
我试过使用表格布局,弹性盒,浮动等。我试图保持它的语义,所以我可以任意转换内容。 (例如受到柔性盒订购的启发)。
我通过使用flexbox与包装关闭,设置'标题'为100%,所以它包装,而这个工程,我进入了一个情景,头或h1首先不是使用内容大小,但一些任意计算flexbox使用,导致它很大。
http://plnkr.co/edit/HJFUqqA6b4ldBBkgDXV6?p=preview
试图使H1的大小以它的内容align-self:flex-start
使其后,插入空白的堆。
我想要的几乎就像我想象CSS的网格布局模块是什么,但似乎并没有在任何地方实现。
UPDATE:原因
部分它惹恼我是纯粹的存在是为了支持该布局。此更新普拉克显示它
http://plnkr.co/edit/rJgrYM?p=preview
在这里我要为上侧全长导航栏,与头坐在了“主”的内容。在语义上它的内容完全相同,只是布置方式不同,但请注意,我必须更改div所包含的内容。这很糟糕,需要html不良变化的样式/布局变化只是感觉不可思议。
你可以使用一些其他的语义元素是''''''''
这不是特别的事实,它的一个div,它的DIV纯粹的存在是为了支持我的布局的事实。这与文件无关。如果我要采用不同的布局,div不需要存在 –
让div支持你的布局没什么问题。尽管你可以尝试使用像Susy或Singularity这样的网格系统。 – Darvanen