修复 CSS 流体网格中的子像素舍入问题

2023-11-22

我正在尝试创建一个流畅的 CSS 网格,它适用于 Firefox 和 IE8+,但不适用于 Safari/Chrome/Opera,其中子像素舍入问题变得可见:

http://jsfiddle.net/bJKQ6/2/

.column {
  float: left;
  width: 25%;
}

主容器的宽度为 100%,如果您更改 Safari/Chrome/Opera 中的浏览器大小,您可以看到圆角宽度不一致。

在广泛阅读了该问题后,我了解到子像素舍入“没有正确或错误的解决方案”,但 Firefox 的方式对我来说似乎是最好的妥协。 (例如,如果我将 4 个 div 设置为 25% 的宽度,则预计覆盖区域为 100%。)

我想知道是否有我错过的纯 CSS 解决方案,或者一些 JavaScript 来解决该问题。

Thanks!

更新:截至 2014 年 5 月,Chrome 33 和 Safari 7 似乎已经采用了“Firefox 方式”。


Stubbornella 的 OOCSS 框架(链接如下)网格模块通过为最后一列提供以下覆盖来处理此问题:

float:    none;
overflow: hidden;
width:    auto;

这允许它占据容器内剩余的任何宽度。

要获得相同的行为,需要进行一些浏览器分叉(IE、ptzsch...):https://github.com/stubbornella/oocss/blob/master/core/grid/grids.css https://github.com/stubbornella/oocss/wiki/grids

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

修复 CSS 流体网格中的子像素舍入问题 的相关文章

  • 为什么用 < 对 JS 数字数组进行排序有效?

    在 JavaScript 中对数字数组进行排序时 我不小心使用了 lt 代替通常 https stackoverflow com questions 1063007 how to sort an array of integers corr
  • 当按下 html 键盘按钮时,将文本添加到输入字段(具有焦点的字段)

    我使用 HTML 创建了一个屏幕键盘 div and a 标签 页面上有六个文本输入 名字 昵称 姓氏 注释 过敏 手机号码 我不太擅长 JS 但如果页面上只有一个输入 我确实知道该怎么做 但我不确定当有多个输入时该怎么做 我遇到的问题之一
  • 将 C# 3D 数组移植到 JS 3D 数组

    我开发了一个 C 库 它在 3 个项目中使用 这些项目在特定的代码段中中继 不过 我仍然需要在 javascript 中使用该代码 所以将其导出 问题是 我认为我无法复制同样的逻辑 比如这个问题我想了好几天也没有得出答案 在 C 库中 我有
  • JQuery:获取单选按钮值

    我有以下 HTML HTML
  • firebug 打开后断点重复触发

    当我在一个站点上打开 firebug 时 我无法分析任何内容 因为每隔几秒就会在该行上触发一个断点 function function a try function b i if i i length 1 i 20 0 function c
  • 如何连接我的 angular2 应用程序 javascript 文件

    对于我的 Angular2 TypeScript 应用程序 我将所有 js 文件合并到一个 app min js 文件中 然后 System import 将此文件导入到我的 index html 页面 然后我得到一个同一模块文件中的多个匿
  • 如何将身份验证详细信息传递给 iframe 内的应用程序?

    我有一个网页 想在其中显示詹金斯的网页 因此使用iframe like But http xxx xxx xx xx 8080 view Nightly 20Builds 20 打开登录页面 因此无法直接显示内容 其实我想在没有登录的情况下
  • Node.js 中的 SetTimeout 问题

    我有以下代码 它在 Chrome V8 下运行良好 但在节点内失败 var id id setTimeout TimeoutHandler 10 console log SET function TimeoutHandler clearTi
  • 如何编写具有依赖状态的 redux 减速器

    我正在开发一个 React Redux 应用程序 它允许将 小部件 添加到页面并在 2D 空间中进行操作 要求可以同时选择和操作多个小部件 我当前状态树的简化版本如下所示 widgets widget 1 x 100 y 200 widge
  • onbeforeunload 或单击浏览器后退按钮需要帮助

    如果用户单击浏览器的后退按钮 那么我希望出现提示并要求确认 如果用户单击 确定 那么它应该导航到xx html 如果用户单击 取消 则应阻止导航 我怎样才能做到这一点 注意 我已经尝试过onbeforeunload方法 但它适用于所有导航操
  • 将 Blob 设置为 iframe 的“src”

    以下代码在 Chrome 中完美运行 但它不适用于 IE 有人可以告诉我这里出了什么问题吗 iframe src 也设置为 blob 如下所示
  • 获取与请求

    我正在使用 JSON 流并尝试使用 fetch 来使用它 该流每隔几秒发出一些数据 仅当流关闭服务器端时 使用 fetch 来使用流才可以访问数据 例如 var target the url var options method POST
  • d3 饼图中的文本被路径覆盖

    我正在尝试按照 d3 的饼图示例进行操作http bl ocks org mbostock 3887235 http bl ocks org mbostock 3887235 我的代码的最小示例 const container graph
  • 使用 webpack 保留输出目录中的文件夹结构

    我有以下文件夹结构 index html app index tsx 与 webpack 捆绑后 我希望有以下输出目录 并将bundle js注入到index html中 dist index html dist app bundle js
  • 如何沿着 Parse Promise 链传递额外数据[重复]

    这个问题在这里已经有答案了 在我的 Parse Cloude 代码中 我需要运行几个连续的查询 每个查询都使用 find Example var promise firstQuery get objectId then function r
  • SVG 沿圆弧添加文本

    我正在尝试绘制 SVG 径向饼图 如下所述 色卡 https stackoverflow com a 18210763 1395178 现在我尝试将文本与圆弧一起添加到每个切片 我试图展示Text 1具有与 M 和 A 值完全相同的 x y
  • 在 Node.js 中封装 require 可以解决相对路径调用

    我正在尝试创建一个 require 包装器来加载依赖项 但我发现很难让它像原始的 require 函数一样工作 当路径是相对路径时 包装器无法解析为正确的路径 因为我的加载程序和调用程序文件不在同一文件夹中 这是一个简化的描述 index
  • 在CSS中重置Margins/Padding时使用*是错误的吗?

    应该避免以下内容 还是应该因其简单性而受到赞扬 作为记录 我在我构建的每个站点中都使用它 但我注意到它并不存在于许多主流 CSS 重置框架中 他们是否也不使用它 margin 0 padding 0 最好不要使用它 因为它会导致表单元素出现
  • Javascript:如何过滤对象数组并对结果求和

    我有一个对象数组 var example a 1 b 2 c 3 a 4 b 5 c 6 a 7 b 8 c 9 我正在尝试添加所有不对应的值c 我已经设法用 console log test filter x gt x c gt 3 过滤
  • 将 SVG 元素放置在图像上

    是否可以拥有以下元素并设置它们的样式 以便 SVG 对象出现在图像上 即像图像的一部分 目前它们显示在其下方的新行中 我知道我可以将图像设置为父 div 的背景图像 但不幸的是我还需要能够在父级内旋转它 所以我认为这不是一个选项 div s

随机推荐

  • 使用 JavaScript 解决线性方程和类似的代数问题

    我是 JavaScript 新手 我正在尝试编写一个解决线性方程的简单脚本 到目前为止 我的脚本只能求解正负线性方程 例如 2x 28 18x 36 4x 10 我希望它还能够解决包含乘法和除法的线性方程 代数问题 例如 2x 3x 4 2
  • java.lang.OutOfMemoryError BitmapFactory.nativeDecodeAsset()

    您好 我正在创建一个关于交通标志的应用程序 交通标志采用 png 格式 其中一些我在水平滚动视图中显示 但是当尝试打开活动时 我从 android market 错误报告中收到此错误 这是我的错误报告
  • 如何使用 Javascript 找到虚拟视口/屏幕宽度?

    是否有一致的方法来使用 Javascript 确定移动设备的屏幕和虚拟视口的宽度 我的目标平台是移动 Safari 和 Android 的原生浏览器 但我也在 Android 上使用其他浏览器进行测试 我尝试过screen width wi
  • ASP Net Core:添加与 IdentityUser 的多对多关系

    我需要在asp net core中添加与UserIdentity的多对多关系 即 一个用户可以拥有很多本书 一本书可以有很多用户所有者 我有书本课 public class Book public int Id get set 我扩展了 U
  • collect2:错误:ld 终止于信号 11 [分段错误],核心已转储

    我当时正在使用 GLFW 学习 OpenGL 当时对 makefile 并没有很好的理解 我可以使用 OpenGL 但我决定更多地学习 makefile 经过大量的网站 时间和反复试验后 我想出了这个 EXENAME OpenGL Demo
  • 删除Java中的第一个空格

    如何删除 Java 中的第一个空格 现在我正在使用这个 if str charAt 0 str str replace 只需使用str trim 摆脱所有前导和尾随空格
  • WebClient 使用凭据访问页面

    我正在尝试访问同一域 同一 asp net 应用程序上的网页 该网页受密码保护 触发此调用的网页和正在访问的网页的凭据都是相同的 这是代码 我不知道为什么我总是以登录表单 html 代码结束 using WebClient client n
  • 并行运行指定数量的命令 - 对比 xargs -P、GNU 并行和“moreutils”并行

    我正在尝试在 bash 脚本中在 26 个服务器上运行多个 mongodump 我可以运行 3 个命令 例如 mongodump h staging mongodump h production mongodump h web 同时 当一个
  • Boto connect_xxx方法和连接池

    如果我多次调用 boto connect xxx 其中 xxx 是某个服务 dynamodb s3 等 它是否每次都会创建一个新的连接池 我想做的是这样的 Flask 中的示例 app before request def before r
  • 使用R中的gsub替换数据帧列中的特定值

    我的 data frame 如下 gt df ID Value A 001 DEL 1 7 35 8 1 A 002 INS 4l 5 74 d B 023 0 C 891 2 D 787 8 E 865 DEL 3 65 1s b 我想将
  • JPopupMenu 上的 JComboBox

    我正在尝试使用复合 Swing 组件作为菜单的一部分 除了一个细节之外 一切都运行良好 该组件包含JComboBoxes 每当用户单击其中之一打开其下拉菜单时 下拉菜单将打开 但菜单会消失 是否可以使菜单保持打开状态JComboBox被点击
  • 使用 .NET 远程读取事件日志

    我想读取远程计算机上的事件日志以检查测试期间是否有错误 这是一些相关代码 public bool CheckEventLogs DateTime start EventLog myEventLog new EventLog CustomLo
  • 宽度以百分比设置的“position:fixed”侧边栏?

    I ve successfully used the beautiful Susy grid system to create a responsive layout similiar to the one of WebDesignerWa
  • 如何在点击android中的edittext时显示自定义键盘

    我的应用程序中有一个自定义键盘 问题是如何在单击 edittext 时播放此键盘 我使用 setonfocuschangre 侦听器 现在当 edittext 焦点更改时会出现自定义键盘 但我想在每次单击 edittext 时显示此键盘 我
  • 什么是 NullReferenceException,如何修复它?

    这个问题的答案是社区努力 编辑现有答案以改进这篇文章 目前不接受新的答案或互动 我有一些代码 当它执行时 它会抛出一个NullReferenceException 说 你调用的对象是空的 这是什么意思 我该如何修复此错误 原因是什么 底线
  • Rails - 测试装置错误 NoMethodError:nil 的未定义方法“类型”:NilClass

    我在运行使用具有模型之间关联的装置的测试时遇到问题 这是我一运行就收到的错误rake test ERROR test truth SevenPortfolioTest 0 005154775 test truth SevenPortfoli
  • 如何将 MongoDB 文档转换为 JSON 对象

    我正在尝试使用从查找查询返回的 MongoDB 文档作为 NodeJS 中的请求正文发出发布请求 但是在服务器上我收到错误 无效的 JSON 以下是我尝试发布的文档 id ObjectId 5739a6bf3f1b41477570dc89
  • 任意分隔符/转义字符处理的最佳算法是什么?

    令我有点惊讶的是 网上没有任何关于此问题的信息 而且我不断发现这个问题比我想象的要棘手一些 规则如下 您从分隔 转义数据开始将其拆分为数组 分隔符是一个任意字符 转义字符是任意一个字符 分隔符和转义字符都可以出现在数据中 正则表达式很好 但
  • 组织Android SDK的代码文件/XML文件

    有人可以提供一些组织我的项目以使其干净的策略吗 假设我有很多活动 将它们全部放入一个单独的包中 同时将其他类 例如自定义适配器 放入另一个包中以更好地分离 逻辑 是否很好 另外 在为布局创建 XML 文件时 如果我有一些用于某些活动的布局和
  • 修复 CSS 流体网格中的子像素舍入问题

    我正在尝试创建一个流畅的 CSS 网格 它适用于 Firefox 和 IE8 但不适用于 Safari Chrome Opera 其中子像素舍入问题变得可见 http jsfiddle net bJKQ6 2 column float le