Safari 5.1 打破 CSS 表格单元格间距

2024-03-02

在更新到 Safari 5.1 之前,我的网站在所有主要浏览器上都运行良好。现在,主要导航已失效。我正在使用display:table-cell在列表元素内的锚元素上,并且还使用了font-size:0hack 删除菜单元素之间的间距。有其他人遇到过这个问题并可以提供解决方案吗?

Before: Before Image

After: After Image

CSS:

#navigation {
  padding-top: 7px;
}

#navigation ul.links, /* Main menu and secondary menu links */
#navigation .content ul /* Menu block links */ {
  margin: 0;
  padding: 0;
  display: block;
  font-size: 0; /* this is a hack so that the spacing between the menu buttons disappear
                   since they are inline-block elements, this should be unneccessary when
                   CSS3 is approved */
}

#navigation ul.links li, /* A simple method to get navigation links to appear in one line. */
#navigation .content li {
  display: inline-block;
  padding-right: 0;
  padding-left: 0;
  margin: 0;

  /* below is a fix for IE7 to get the main navigation items lined up correctly
   * in one row
   */
  zoom: 1;
  *display: inline;
}
#main-menu ul {
  width: 100%;
}
#main-menu li {
  width: 108px;
  text-align: center;
  padding-bottom: 7px;
  font-size: 11pt;
}
#main-menu a {
  display: table-cell;
  width: inherit;
  text-decoration: none;
  font-size: 0.9em;
  color: #035B9A;
  background-color: white;
  height: 30px;
  vertical-align: middle;
}

HTML:

<div id="navigation">
    <div class="section">
        <h2 class="element-invisible">Main menu</h2>
        <ul id="main-menu" class="links inline clearfix">
            <li class="menu-379 first"><a href="/about-scrubbed">About Us</a></li>
            <li class="menu-401"><a href="/" title="">Research</a></li>
            <li class="menu-385"><a href="/education">Education</a></li>
            <li class="menu-402"><a href="/" title="">Outreach</a></li>
            <li class="menu-403 active-trail active"><a href="/news" title="" class="active-trail active">News &amp; Events</a></li>
            <li class="menu-439"><a href="/people">People</a></li>
            <li class="menu-405"><a href="/" title="">Resources</a></li>
            <li class="menu-406"><a href="/" title="">Publications</a></li>
            <li class="menu-415 last"><a href="/partners">Partners</a></li>
        </ul>
    </div>
</div>

Thanks.

请注意,这是一个 Drupal 7 站点。

另外,我坦率且谦虚地承认,我在 CSS 标记方面并不是最擅长的。我现在正在学习很多东西,只是想勉强度日。


对于那些在 Safari 和元素尺寸设置为 display:table; 时遇到问题的人我能够通过删除填充并将填充添加到设置为 display:table-cell; 的子元素来解决我的问题。

显然,当您尝试向设置为 display:table; 的元素添加填充时,Safari 不喜欢它;回想起来,这是有道理的。

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

Safari 5.1 打破 CSS 表格单元格间距 的相关文章

随机推荐

  • 如何制作像 Chrome 中那样的溢出菜单?

    我想制作一个类似于 android 中的 chrome 应用程序的溢出菜单 其中有前进 后退和书签按钮 这是溢出菜单 https i stack imgur com Tenox png在 Chrome 应用程序中 有任何想法吗 您无法为溢出
  • 与 Web 小部件通信 - Meteor、React、Node

    我正在构建一个聊天仪表板和小部件 客户应该能够将小部件放入他们的页面中 一些类似的例子是Intercom http www intercom com or Drift http drift com 目前 主 应用程序是用 Meteor js
  • (错误?)InnoDB MySQL 错误 1025,errno 150 外键

    我有一个表 我正在尝试更改其主键 这是表定义 CREATE TABLE tbl customer PersonId int 11 NOT NULL Id int 10 unsigned NOT NULL Name varchar 100 c
  • 如何在不停机的情况下将更改部署到生产中(通用托管)?

    在不停机的情况下部署从开发到生产的更改 例如某些内容类型模型中的更改 的推荐方法是什么 我正在使用这个设置 我有带有开发 postgres 数据库的开发实例 在生产中 我有 3 个 Strapi 实例 同时服务 api 和 admin 使用
  • 在 (ubuntu) linux 中捕获第二个键盘输入

    我编写了一个从 USB 第二个键盘 实际上是条形码扫描仪 获取输入的程序 问题是 如果另一个窗口处于活动状态 则数据会在那里输入 而不是在我的程序中输入 有人可以就我做错的事情给我建议吗 include
  • Google App Engine 有效负载对象

    如何在Python中的任务有效负载中发送类对象 我想在任务的参数中发送一个对象 当我使用simplejson 我收到错误 Object is not serializable 当我使用pickle时 我得到KeyValue Error 这个
  • self.presentingViewController 返回 UITabBarController 而不是使用presentModalViewController 推送它的视图控制器

    我有一个tab基于应用程序 中的一个views其中正在推动一个modal view controller 如果我打电话self presentingViewController在一个modal view controller 它返回tab
  • 在 Xcode 中查看 NSData 内容

    我正在运行 Xcode 我想转储 NSData 有问题的变量是缓冲区 有没有办法通过 UI 或 GDB 调试器来做到这一点 Edit 我已将笔记移至答案中 从来没有人正确回答过这个问题 两年后 我想是时候换一个了 假设你的代码中有 NSDa
  • 为什么 window.location.search 为空?

    If I console log window location 我明白了 Location replace function assign function ancestorOrigins DOMStringList origin htt
  • “skip.header.line.count”=“1”在 SparkSession 的 Hive 中不起作用

    我正在尝试使用 SparkSession 将 CSV 数据加载到 Hive 表中 我想在加载到配置单元表时跳过标题数据 并且设置 tblproperties skip header line count 1 也不起作用 我正在使用以下代码
  • 更改 url 中的主机名

    我正在尝试使用 python 更改 url 中的主机名 并且已经使用 urlparse 模块有一段时间了 但没有找到令人满意的解决方案 举个例子 考虑一下 url https www google dk 80 barbaz https ww
  • 使用 Json.Net 序列化哈希表

    我有一个哈希表 其键为整数类型 但是当使用 json net 反序列化时 键以字符串形式返回 有没有办法使用 json net 序列化 反序列化将键类型保留在哈希表上 该哈希表是 MyType 类型的属性 var settings new
  • Facebook 分享按钮

    如何获取 Facebook 分享按钮 现在他们没有显示获取代码 首先在标签中定义一些属性 如下所示 gt xmlns http www w3 org 1999 xhtml gt xmlns fb http www facebook com
  • 如何在chart.js中应用渐变颜色?

    我正在使用 Chart js 库制作折线图 在这里我想将线条的颜色更改为渐变颜色 我试过的代码 const gradientFill ctx createLinearGradient 500 0 100 0 gradientFill add
  • Swift 中的 UserDefaults 让人疯狂[UI]

    当我开始接触 Swift 和 SwiftUI 时 我发现从 UIKit 迁移的过程非常困难 即使在尝试理解我在网上找到的许多教程之后 目前仍被 UserDefaults 所困扰 请告诉我我在这里做错了什么 非常简单的代码 将 bool 值注
  • 没有自己的文件夹的 git 子模块

    我想将我的项目的某些部分 例如我的 jQuery 插件 外部化 我正在为此目的研究子模块 它们看起来相当完美 因为它们可以在一个集中点进行管理和更新 我唯一的问题是 它们克隆到一个文件夹中 这给我留下了这样的结构 js plugin one
  • 水豚找到按钮但点击它没有任何反应

    更新 我删除了大部分 javascript 依赖项并且它起作用了 不知道哪个库或代码是邪恶的部分 我不需要它们 简单的表单 两个输入字段和一个按钮 fill in cellNumber with gt 13245678 fill in pa
  • 反转 Pandas DataFrame 中的行值

    我正在处理 pandas 数据框 我想找到每行中最远的非空值 然后反转这些值的顺序并输出一个数据框 其中行值反转 而不在第一列中留下空值 本质上是反转列顺序并将非空值向左移动 IN 1 2 3 4 5 1 a b c d e 2 a b c
  • 为什么 Nuget Javascript 包复制到 Scripts 文件夹

    当我安装时将 jQuery 从 Nuget 导入到我的 VS C 项目中 jquery js 最终出现在我的包文件夹中 这很好 因为我不想将此文件签入我的源代码管理中 因为它不是我的代码 而且我永远不会更改它 在这种情况下 它相当于我可能通
  • Safari 5.1 打破 CSS 表格单元格间距

    在更新到 Safari 5 1 之前 我的网站在所有主要浏览器上都运行良好 现在 主要导航已失效 我正在使用display table cell在列表元素内的锚元素上 并且还使用了font size 0hack 删除菜单元素之间的间距 有其