flex左右布局

左边固定 右侧自适应

想要保证自适应内容不超出容器怎么办。

通过为自适应的一侧设置width: 0;或者overflow: hidden;解决。

首先实现标题的布局,也很简单:

  1. <div class="item">
  2. <div class="l">LEFT</div>
  3. <div class="r">
  4. <div class="title">OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG OMG</div>
  5. <div class="content">
  6. RIGHT FULL
  7. </div>
  8. </div>
  9. </div>
  1. .item {
  2. display: flex;
  3. }
  4. .item .l {
  5. width: 240px;
  6. min-width: 240px;
  7. background-color: #ff5f00;
  8. }
  9. .item .r {
  10. background-color: mediumseagreen;
  11. flex-grow: 1;
  12. padding: 20px;
  13. }
  14. .item .r .content {
  15. width: 100%;
  16. word-break: break-all;
  17. }
  18. .item .r .title {
  19. font-weight: bolder;
  20. font-size: 1.4em;
  21. width: 100%;
  22. /*overflow: hidden;
  23. text-overflow: ellipsis;
  24. white-space: nowrap;*/
  25. }
  1. let str = '';
  2. for (var i = 0; i < 1000; i++) {
  3. str += ('' + Math.random().toString().substr(2, 5));
  4. }
  5. document.querySelector('body > div.item > div.r > div.content').innerHTML = str;

预览发现基本符合预期:

这时如果想要标题不换行,超出省略号;将CSS中注释的代码取消注释,会发现,内容将容器撑开,出现了横向滚动条,这不是我们想要的。

要解决这个问题,可以:

  1. .item .r {
  2. background-color: mediumseagreen;
  3. flex-grow: 1;
  4. padding: 20px;
  5. /*增加一个*/
  6. width: 0;
  7. }

或者:

  1. item .r {
  2. background-color: mediumseagreen;
  3. flex-grow: 1;
  4. padding: 20px;
  5. /*增加一个*/
  6. overflow: hidden;
  7. }

也可以达到预期。

The end...Last updated by Jehorn, 2:55 PM, Thursday, May 9, 2019

flex左右布局 左边固定 右侧自适应的更多相关文章

  1. html布局,左侧固定右侧自适应

    前几天看到我们的UI稿,要实现左侧固定树结构,右侧自适应.想着自己写过几次但是每次都会忘记,在这里做个笔记. 第一种方法: <!DOCTYPE html> <html lang=&q ...

  2. CSS自适应布局(左右固定 中间自适应或者右侧固定 左侧自适应)

    经常在工作中或者在面试中会碰到这样的问题,比如我想要个布局 右侧固定宽度 左侧自适应 或者 三列布局 左右固定 中间自适应的问题. 下面我们分别来学习下,当然我也是总结下而已,有如以下方法: 一: 右 ...

  3. 七种CSS左侧固定,右侧自适应两栏布局

    一 两栏布局基本HTML和CSS 首先创建基本的HTML布局和最基本的样式. 基本的样式是,两个盒子相距20px, 左侧盒子宽120px,右侧盒子宽度自适应 <div class="w ...

  4. css中左侧固定,右侧自适应

    谈谈我开始出来工作时候的一道面试题吧 当初我记得在太平洋网络面试的时候,面试官给我出了这么一道题: 有一个外层的div 中间有左右两个div 要求左侧的div 1.只告诉你宽度;       2.只告 ...

  5. css网页布局 --- 左边固定,右边自适应

    div的布局统一如下: <body> <div class="wrap"> <div class="left"></d ...

  6. css布局中左侧固定右侧自适应

    float 单一层浮动法左侧固定成100px; 则核心代码 左侧:width:100px;float:left; 右侧 width:auto;margin-left:100px;绝大浏览器是没有任何问 ...

  7. FLEX实现两侧边栏固定中间自适应布局

    <style type="text/css"> #outer{ display: flex; width: 100%; flex-flow: row nowrap; } ...

  8. css布局之左侧固定右侧自适应布局

    参考代码如下: <form id="form1" style="height:100%; overflow:hidden;"> <div st ...

  9. css布局两边固定中间自适应的四种方法

    第一种:左右侧采用浮动 中间采用margin-left 和 margin-right 方法. 代码如下: <div style="width:100%; margin:0 auto;& ...

随机推荐

  1. colormap是MATLAB里面用来设定和获取当前色图的函数。

    下面将举例.描述MATLAB内建的色图.用户除了可以编程指定MATLAB内建的色图,还可以使用Plot Tools图形用具界面的Figure Properties面板中的Colormap菜单来选择一种 ...

  2. 《Linux性能及调优指南》 Linux进程管理

    版权所有: 原文名称:<Linux Performance and Tuning Guidelines> 原文地址:http://www.redbooks.ibm.com/abstract ...

  3. Java RMI实践

    Java远程方法调用,即Java RMI(Java Remote Method Invocation).一种用于实现远程过程调用的应用程序编程接口.客户机上运行的程序可以调用服务器上的对象. 缺点:只 ...

  4. Ubuntu 1604 安装配置 kafka,并配置开机自启(systemctl)

    安装 kafka 需要先安装 jdk.一.下载官网:http://kafka.apache.org/downloads.html 二.安装 安装参考:https://segmentfault.com/ ...

  5. Manning Java Persistence with Hibernate & hibernate_in_action

    Manning | Java Persistence with Hibernatehttps://www.manning.com/books/java-persistence-with-hiberna ...

  6. [转]arcgis for server 10.2 下载及安装

    转自:https://blog.csdn.net/nominior/article/details/80211963 https://blog.csdn.net/mrib/article/detail ...

  7. flutter SnackBar 底部消息提示

    具有可选操作的轻量级消息提示,在屏幕的底部显示 文档:https://api.flutter.dev/flutter/material/SnackBar-class.html demo: import ...

  8. Vue中的路由 以及默认路由跳转

    https://router.vuejs.org/ vue路由配置: 1.安装 npm install vue-router --save / cnpm install vue-router --sa ...

  9. Python3基础 def 函数要先定义再调用

             Python : 3.7.3          OS : Ubuntu 18.04.2 LTS         IDE : pycharm-community-2019.1.3    ...

  10. cJSON笔记

    github地址: https://github.com/DaveGamble/cJSON 需要将cJSON.h 和 cJSON.c拷贝到路径下,并且连接所需库文件 -lm 步骤:1.先将普通的jso ...