在 Flexbox 中从纵向布局切换到横向布局

2024-03-21

我想实现以下Layout https://i.stack.imgur.com/tOpuX.png与弹性盒:

您可以在图片中看到两个方向。左侧为纵向视图,右侧为横向视图。

前提是我想让我的html尽可能短(如果可能的话)。

有没有办法用 Flex 来做到这一点?

在纵向视图中,一切都工作正常,因为它只是一列。

现在我陷入了横向。

导航应位于屏幕右侧,其他内容位于左侧。

header, footer, main, nav {
  margin: 5px;
  padding: 5px;
  border-radius: 5px;
  min-height: 120px;
  border: 1px solid #eebb55;
  background: #ffeebb;
}
section {
  display: flex;
  flex-direction: column;
}
@media only screen and (orientation: landscape) {
  /* no clue */
}
<section>
  <header>header</header>
  <main>content</main>
  <nav>navigation</nav>
  <footer>footer</footer>
</section>

非常感谢您的宝贵时间!


为了使此布局能够与 Flexbox 一起使用,容器上必须有固定的高度。否则,弹性项目不知道在哪里换行,导航元素也不会移动到右列。

在这种情况下,布局似乎覆盖了视口,因此您应该已准备就绪。

只需使用height: 100vhorder财产。没有对 HTML 进行任何更改。

section {
  display: flex;
  flex-direction: column;
  height: 100vh;
}

header, footer, main, nav {
  flex: 1;
  margin: 5px;
  padding: 5px;
  border-radius: 5px;
  border: 1px solid #eebb55;
  background: #ffeebb;
}

@media only screen and (orientation: landscape) {
  section {
    flex-wrap: wrap;
  }
  nav {
    flex-basis: 100%;
    order: 1
  }
}

body { margin: 0; }
<section>
  <header>header</header>
  <main>content</main>
  <nav>navigation</nav>
  <footer>footer</footer>
</section>

jsfiddle 演示 https://jsfiddle.net/aysogmqh/1/

其他选项请参见:使 div 跨越网格中的两行 https://stackoverflow.com/q/42946454/3597276

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Flexbox 中从纵向布局切换到横向布局 的相关文章

随机推荐

  • c# OCR无法识别数字(tesseract 2)

    I m trying to extract digits from the following 它失败了 我得到了 作为回报 我正在使用 google 的 tesseract 2 使用 C 开源 c 包装器 现在我想知道 这个图像是否太糟糕
  • 如何检查for循环内的唯一性?

    有没有办法检查切片 映射是否存在值 我想为切片添加一个值only如果是的话not存在于切片中 这可行 但看起来很冗长 有一个更好的方法吗 orgSlice int 1 2 3 newSlice int newInt 2 newSlice a
  • Webpack babel es6 给我错误,react-router 1.0“找不到模块”?

    我在使用react router时遇到以下错误 它所引用的错误看起来像是在我的应用程序代码之外 但在react router库本身中 ERROR in react router lib Router js Module not found
  • 在Android中查找包含View的Window

    我找不到获得参考的方法Window包含任意Viewv 我发现获取窗口令牌 http developer android com reference android view View html getWindowToken 但我不知道如何使
  • Android BottomNavigationView 与闪屏返回堆栈问题

    所以我设置了我的BottomNavigationView like here https youtu be Covu3fPA1nQ 使用导航组件库 一切正常 每个选项卡都可以保留其后堆栈 但是 如果我添加一个启动屏幕 Fragment an
  • 如何管理应用程序工厂模式中的额外模块?

    我正在使用带有应用程序工厂模式的烧瓶 我确实知道应用程序工厂模式仅在工厂函数中管理配置对象 如下面的代码所示 def create app config app config from object config sentry init a
  • 无法在 Desktop 中为 Compose 设计 UI 布局

    我正在为基于的应用程序开发 UI 布局为桌面撰写 https www jetbrains com lp compose mpp 它由几个复选框组成 但里面没有任何功能为桌面撰写 https github com JetBrains comp
  • JavaScript:使用递归检查数字是否为素数

    我对如何解决这个问题有点困惑 我需要所有素数才能返回 true 如果不返回 false 我看到我的逻辑包括 2 并且返回 0 所以它自动返回 false 因为 2 余数为 0 function isPrime num div 2 BASE
  • 如何在 Azure DevOps 中创建面板?

    我遇到了这个问题并解决了它 所以这里有这个问答 以防万一其他人花时间筛选 Microsoft 文档试图找到这个答案 如何在 Azure DevOps 中创建新板 当我转到 板 gt 板 并查看现有板时 没有像板列表下拉列表中的存储库那样可以
  • MS Access 对具有多个联接的链接表的查询非常慢

    我有一个 MySQL 数据库和一个 MS Access 前端 MySQL 数据库表通过 ODBC 连接链接到 MS Access 如果 WHERE 或 HAVING 子句中有任何内容 任何具有多个连接表的查询都会运行得非常慢 例如 SELE
  • Apple Watch 设置背景图片

    如何以编程方式设置 WatchKit 应用程序背景图像 我需要在代码中设置它 因为它会根据变量大小而变化 并且我们需要在图像上放置标签 这是不可能的以编程方式将背景图像设置在整个手表应用页面在 WatchKit 中 整个页面的背景图像当前只
  • 在 Markdown 中更改美人鱼主题

    除了代码之外 我在 Markdown 文档中使用 mermaid 进行基本图表渲染 我发现这个在线编辑器 https mermaidjs github io mermaid live editor 在预览时对其进行编辑很有用 这建议更改主题
  • 计算java中两个日期之间的月份[重复]

    这个问题在这里已经有答案了 我需要计算两个日期之间的月份 如果 startDate 2013 01 01 endDate 2013 01 31 答案应该是 1 startDate 2013 01 01 endDate 2013 02 01
  • Rails:虚拟属性和表单值

    我有一本带有虚拟属性的模型书 用于从书籍表单创建编辑器 代码如下 class Book lt ActiveRecord Base has many book under tags has many tags through gt book
  • 如何使用 JDBC 连接 XAMPP MySQL 本地数据库?

    我有一个用Java编写的俄罗斯方块游戏 它使用DB来记录高分 只要我使用远程 MySQL DB 它就可以正常工作 但现在我尝试使用 XAMPP MySQL 设置本地主机 DB 并且在命令中它一直像 SQLException 通信链接失败 一
  • 我可以使用 JavaScript/JQuery 将上传的文件添加到 ASP.NET 中的 Request.Files 中吗?

    我不完全确定如何使用 JavaScript 将文件添加到 Request Files 中 这就是我要去的 var x input type file eq 0 Add the data to the hidden field hiddenF
  • 指定 nodeSize 时 d3 树的居中发生变化

    我为此使用 d3 v4 当我有 var treemap d3 tree size height width 这棵树很好地居中 但是 因为我想指定节点之间的垂直间距 当我将其更改为 var treemap d3 tree size heigh
  • 适合程序员的 TCP/IP 网络书籍? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • React useEffect 钩子有条件地加载 onsnapshot

    我正在尝试执行以下操作 但似乎无法获得最合适的解决方案 在我的 React 应用程序 应用程序组件 的顶层 我正在加载 firebase 和 firestore 我有一个反应上下文 其中存储了我的身份验证信息 身份验证上下文不会立即加载 而
  • 在 Flexbox 中从纵向布局切换到横向布局

    我想实现以下Layout https i stack imgur com tOpuX png与弹性盒 您可以在图片中看到两个方向 左侧为纵向视图 右侧为横向视图 前提是我想让我的html尽可能短 如果可能的话 有没有办法用 Flex 来做到