问题:overflow 和 justify-content 同时使用出现内容被裁减的问题

2023-11-03

开发的时候遇到如下问题

当给一个容器的样式同时添加 justify-content :center overflow-x: auto 属性,当内容长度超过容器的长度的时候会出现左侧内容被裁剪的问题。

<style>
    .prop-list {
      width: 500px;
      height: 100px;
      background: rgba(167, 155, 180, 0.3);
      border: 3px solid rgba(68, 203, 245, 0.3);
      border-radius: 10px;
      display: flex;
      justify-content: space-around;
      align-items: center;
      overflow-x: auto;
      margin: auto;
    }
    .prop-item {
      min-width: 70px;
      height: 70px;
      margin: 0 10px;
      background-color: lightcyan;
      border: 3px solid rgba(255, 255, 255, 0.3);
      border-radius: 10px;
      text-align: center;
      line-height: 70px;
      font-size: 20px;
      font-weight: 900;
    }
  </style>
  <body>
    <div class="prop-list">
      <div class="prop-item">1</div>
      <div class="prop-item">2</div>
      <div class="prop-item">3</div>
      <div class="prop-item">4</div>
      <div class="prop-item">5</div>
      <div class="prop-item">6</div>
      <div class="prop-item">7</div>
      <div class="prop-item">8</div>
    </div>
  </body>

效果:
在这里插入图片描述

原因

设置 justify-content :center 使元素居中,超过容器的地方会被认为成是溢出,再结合 overflow-x: auto ,右侧超出容器的地方会被滚动条滚动显示,但是左侧的地方已经被 “裁剪了”,无法显示。
在这里插入图片描述

解决

既然是因为元素居中导致元素被隐藏,那就不在 prop-list 容器上使用overflow-x: auto;了, 可以在 prop-list 容器外面再套一层容器 prop-container 实现 overflow-x: auto;作为可视区域的容器, prop-list 容器则作为被滚动显示的容器,此时 prop-container 容器的子元素默认从左边开始显示,就不会有因为子元素剧中导致的裁切问题了。

  • 原理:
    在这里插入图片描述
  • 实现
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <style>
    .prop-container {
      width: 500px;
      overflow-x: auto;
      margin: auto;
    }
    .prop-list {
      min-width: 500px;
      height: 100px;
      background: rgba(167, 155, 180, 0.3);
      border: 3px solid rgba(68, 203, 245, 0.3);
      border-radius: 10px;
      display: flex;
      justify-content: space-around;
      align-items: center;
    }
    .prop-item {
      /* 需要设置下,要不然会强制压缩 */
      min-width: 70px;
      height: 70px;
      margin: 0 10px;
      background-color: lightcyan;
      border: 3px solid rgba(255, 255, 255, 0.3);
      border-radius: 10px;
      text-align: center;
      line-height: 70px;
      font-size: 20px;
      font-weight: 900;
    }
  </style>
  <body>
    <div class="prop-container">
      <div class="prop-list">
        <div class="prop-item">1</div>
        <div class="prop-item">2</div>
        <div class="prop-item">3</div>
        <div class="prop-item">4</div>
        <div class="prop-item">5</div>
        <div class="prop-item">6</div>
        <div class="prop-item">7</div>
        <div class="prop-item">8</div>
      </div>
    </div>
  </body>
</html>
  • 效果
    在这里插入图片描述

啊哦,还是被裁剪了。这是神什么原因呢?这个因为 设置 prop-list 容器display: flex; 那么容器的默认宽度就是父元素 prop-container 的宽度(符合默认的block属性),然后设置子元素居中显示,所以还是会被裁剪。

  • 解决:
    设置 prop-list 容器 display: inline-flex; 那么 prop-list 容器就符合inline-block属性,宽度是被子元素撑开的。
    效果:
    在这里插入图片描述
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

问题:overflow 和 justify-content 同时使用出现内容被裁减的问题 的相关文章

  • 为什么我的 HTML 文件无法在浏览器中显示?

    我正在学习如何使用文本编辑器 并且刚刚用它创建了我的第一个文件 它预览了正确的输出 但是当我在浏览器中运行它时 它给了我一个空白页面 正如您所看到的 doctype 和 html 标签以及 head 和 body 都已就位 我使用 Visu
  • 使用 CSS 显示 div 内容后淡出

    我正在尝试在单击按钮时显示通知 单击按钮实际上会检查电子邮件验证 我知道要显示一个包含错误消息内容的 div 但是 我想淡出错误消息 比如说 5 秒后 我想用CSS来实现它 以下是我的尝试 它只是隐藏了一切 signup response
  • 将 javascript 对象分配给 html 元素的最佳方法

    我通过 ajax 获取一个 javascript 对象 我需要将此对象附加到 div 以便稍后恢复 例如 在单击事件上 如果我有一个变量而不是一个对象 我会将它推入 html 标签 如下所示 div div 我会像这样恢复它的价值 var
  • jQuery find() 只返回第一个匹配的结果?

    我在 jQuery 中使用 find 方法 但无法获得与选择器条件匹配的所有结果 这是我的 HTML div class something div
  • 提交ajax表单并停留在同一页面不起作用

    我想将用户的评论存储在我的数据库中 当用户提交时 我不想将他们重定向到新页面 我有以下代码 但它不起作用 我的 HTML 代码
  • html 中的图像按钮

    我正在尝试获取一个带有图像的按钮 我见过类似下面的东西 但它们不会为您提供普通按钮所具有的按钮按下 释放效果
  • 当通过 Jquery 将当前页面的 html 传递到托管 bean 时,primefaces RemoteCommand 标记不起作用

    我正在使用 Jquery 的 html 方法获取当前页面的 HTML 如下所示
  • 如何在标签中制作文字自动换行

    我想在其中添加文字 a 标签适合固定的 div 但它会破坏 div 并且显示得很丑 CSS3 有一个属性 word wrap break word 看看MDN 自动换行文档 https developer mozilla org en CS
  • 获取要在新浏览器中显示的选择值

    嘿 基本上这是我的代码 运行的第一个脚本允许在 URL 中显示所选值
  • Javascript显示/隐藏div onclick

    我有一个页面 其中包含三个 div 每个 div 是一个段落 我想使用 javascript 在用户从导航栏中按下每个 div 时仅在页面中显示这是导航栏 https i stack imgur com 1LnsS png WebDev 只
  • 聚合物纸下拉菜单在浏览器中未正确呈现

    我对简单的纸张下拉菜单的渲染 html 遇到问题 列表项并不显示为样式化的 菜单 而只是出现在页面上的项目列表 单击渲染的纸张输入组件 渲染的下拉列表的一部分 确实会为波纹设置动画 但不会为菜单和菜单项的显示 隐藏设置动画 单击列表中的某个
  • php 在内容前插入十六进制字符数

    我正在将网站移动到新服务器 旧服务器有 php 5 3 2 新服务器有 php 5 5 9 Centos httpd Apache 2 2 26 我已经复制了文件 它工作正常 除了唯一奇怪的事情 一些奇怪的十六进制数字被插入到页面内容之前
  • 将 html 源拆分为多个文件

    HTML 是否支持将源代码拆分为多个文件 我正在寻找 C 的等价物 include 或者也许是类似 C 的东西partial 可以采用源路径并在该位置注入文件内容的元素 如果之前有人问过这个问题 我们深表歉意 Google 和 SO 搜索没
  • 使用 XPath 获取内部有链接的段落文本

    我正在使用 XPath 解析 HTML 页面 并希望获取某些特定段落的完整文本 包括链接文本 例如我有以下段落 p class main content This is sample paragraph with a href http g
  • 使用 jQuery 的 .trigger('dragstart') 实现 HTML5 的拖放功能时如何 .setData/.getData

    当使用 jQuery 的 trigger dragstart 在具有 ondragstart drag event 属性的元素上触发函数时 如何使用 setData getData 实现 HTML5 在触摸设备上的拖放 流程示例 用户通过
  • 如何解决flash的zindex问题

    在网页中我需要显示div覆盖未使用的 Flash 横幅wmode transparent环境 怎么解决呢 根据我的记忆 你可以将 div 推入 也许使用Javascript 这样你就不会弄乱你的HTML iframe 是像 flash 一样
  • 如何使链接悬停时的背景图像模糊?

    当您用鼠标光标悬停链接时 我想让我的背景图像模糊 5 像素 有什么简单的方法可以实现这一点吗 我有点纠结于类和 id 在这里 pic background url http www metalinjection net wp content
  • 适用于 HTML5 混合应用程序的 CORS

    我读过很多关于 CORS 的文章 以及允许 Access Control Allow Origin 如何成为 Web 服务器的安全漏洞 但没有一篇文章解释了如何允许 HTML5 混合应用程序访问某些不允许使用通配符 的域上托管的 Web 服
  • 创建响应式眼睛焦点图标

    我一直在尝试制作响应式彩色眼睛焦点图标 但到目前为止我所尝试的一切均不成功 我试图在某种程度上复制真眼的颜色 我使用边框 框阴影来获取颜色 但该部分没有缩放 也尝试过轮廓 但也失败了 那个甚至不是圆的 div 的高度当前是静态的 但我希望它
  • HTML:JavaScript:阻止表单提交并调用 Javascript 函数

    我想在按下表单中的提交按钮时进行 AJAX 调用 事实上我无法删除

随机推荐

  • Android studio 配置Git

    使用GIT前请阅读 有git基础可略过 git指引 http www bootcss com p git guide 一 下载git http git scm com download 二 安装 全部默认配置即可 三 配置 运行Git Ba
  • 佳能相机里误删的照片怎么恢复

    佳能相机一直以耐用性 高效性以及高画质著称 在相机领域里有一定口碑 相信很多人都是佳能的忠实粉丝 但是不管它的质量多么好 拍出来的照片多么高清 我们却总也避免不了人为的失误 万一不小心将里面的照片误删了 该怎么恢复呢 下面就一起来学习具体恢
  • springboot maven项目环境搭建idea

    springboot maven项目环境搭建idea 文章目录 springboot maven项目环境搭建idea 用到的软件 idea下载和安装 java下载和安装 maven下载和安装 安装maven 添加JAVA HOME路径 增加
  • 第六部分、JEECG-BOOT 通过archetype创建module模块

    文章目录 第六部分 通过archetype创建module模块 通过Archetype创建模块代码 代码结构如下 如何使用 第六部分 通过archetype创建module模块 通过Archetype创建模块代码 包名规则 org jeec
  • 面向对象设计原则 选自《敏捷软件开发原则,模式与实践》

    单一职责原则 就一个类而言 应该仅有一个引起他变化的原因 最简单也是最难掌握的一个原则 其中单一职责 内聚 职责 变化的原因 不同职责并非绝对不能共处 关键是发现类中变化特征不同的职责减少耦合 这个是横向的 开放 封闭原则 软件实体 类 模
  • 每日一道Python编程题目练习,不定期更新

    自学python中 此文章目的为记录练习过程 同时督促自己每天练习一道python题目 题目来源于网络 代码由自己书写 初学者 仅为记录 大佬不喜勿喷 尽量书写注释 如有错误 欢迎指正 如果有推荐的题目可以评论 目前感觉对python的基础
  • python-Django_根据数据库表反向生成Model

    Django 根据数据库表反向生成 Model 简介 Django 根据数据库表反向生成 Model 使用 inspectdb 反向生成 model 实体类 可以指定表名转换 python manage py inspectdb 命令参数解
  • html css js 一些记录.

    webstorm 的基本使用 webstorm 格式化 html 代码 Ctrl Alt L js html css 基本使用 注意 dom 的 innerHTML会刷新dom 所以里面包含的事件绑定可能无效 需要重新绑定 document
  • 存储过程分表

    DROP PROCEDURE IF EXISTS test sql create procedure test sql in start num int in end num int begin declare i int set i st
  • SpringBoot使用Jackson,全局反序列化去除字符串前后空格

    方法一 继承SimpleModule Component public class StringTrimModule extends SimpleModule private static final long serialVersionU
  • 字节流 FileInputStream和FileOutputStream类 三种读写方法对比概述

    文件操作 FileInputStream和FileOutputStream类 三种read方法对比概述 流 字节流 FileInputStream及FileOutputStream类的构造方法 代码测试read 以及write 三个方法各自
  • 【牛客SQL】SQL22 统计各个部门的工资记录数

    题目描述 描述 有一个部门表departments简况如下 有一个 部门员工关系表dept emp简况如下 有一个薪水表salaries简况如下 请你统计各个部门的工资记录数 给出部门编码dept no 部门名称dept name以及部门在
  • TensorFlow猫狗大战完整代码实现和详细注释

    运行环境 Windows10 TensorFlow1 10 GPU版本 python3 6 编译器pycharm 文件说明 1 data文件夹下包含test和train两个子文件夹 分别用于存放测试数据和训练数据 从官网上下载的数据直接解压
  • dod刷服务器文件,如何建立一个DOD服务器

    如何建立一个服务器 建立一个服务器让玩家来玩其实很简单 首先你要决定是否要从这台服务器机子本身玩DoD 或者建立一个纯服务器 你将不能用这台机子玩DoD 事实上一个纯服务器效率更高 服务器管理员并没有在服务器里玩 目前我们先讨论如何建立一个
  • 基于随机森林实现特征选择降维及回归预测(Matlab代码实现)

    目录 摘要 1 随机森林 2 随机森林的特征选取 3 基于Matlab自带的随机森林函数进行特征选取具体步骤 1 加载数据 2 首先建立随机森林并使用全部特征进行车辆经济性预测 3 使用随机森林进行特征选择 4 评价各个特征之间的相关性 5
  • 朴实无华地解决h5移动端开发软键盘输入时导致页面出现白块

    项目场景 项目场景 h5移动端开发 问题描述 登录页面在输入账密的时候 软键盘弹起的时候带出了白块在收起软键盘之前不会消失 原因分析 在页面中使用了相对定位 绝对定位属性以及margin属性 导致软键盘弹起时页面内容长度增加但不会自动收回
  • linux自启动程序

    嵌入式linux下有软件需要自启动 只需要在 etc init d rcS末尾添加所要启动的程序即可 开机就会自动运行 vi etc init d rcS在文件末尾添加 例
  • ubuntu16.10 lenovo拯救者笔记本无线网络开关修复方法(联想拯救者 + ubuntu16.04 + WIFI设置)

    问题一1 1 问题描述笔记本型号 Lenovo r720笔记本 i5 7300hq gtx1060 maxq 6g 默认装入Win10系统 然而当装入Ubuntu16 04双系统时 会出现无线网卡 型号 RTL8821AE 被hard bl
  • Composer中的curl引入

    Composer是php的主要扩展库 类似于npm pip等 可以安装很多优秀的php扩展 在使用短信验证码接入功能的时候 必须要引入这个扩展 1 从官网上引入composer地址 composer require curl curl 2
  • 问题:overflow 和 justify-content 同时使用出现内容被裁减的问题

    文章目录 开发的时候遇到如下问题 原因 解决 开发的时候遇到如下问题 当给一个容器的样式同时添加 justify content center 和 overflow x auto 属性 当内容长度超过容器的长度的时候会出现左侧内容被裁剪的问