为什么连字符不能与内部 一起使用?

2024-06-05

我正在尝试让连字符处理具有以下内容的文本<span>里面的元素用于突出显示。这似乎打破了连字符算法。有什么方法可以修复这种行为,使连字符的放置方式与没有连字符的位置相同<span>元素? 我不是在问像这样的解决方法&shy;

代码(沙箱:https://codepen.io/anon/pen/ayzxpM https://codepen.io/anon/pen/ayzxpM):

.limit {
  max-width: 50px;
  hyphens: auto;
  font-size: 20px;
  background-color: #eee;
}

span {
  color: red;
}
<div class="limit">
  <p>
    Appletreefruitthing
  </p>
  <p>
    Apple<span>tree</span>fruitthing
  </p>
</div>

使用 lang 属性

按照 Vadim Ovchinnikov 的建议添加 lang 属性(<div class="limit" lang="en">)可以在某些平台/浏览器组合上带来更好的结果。在 Firefox 54、Windows 10 上,结果如下:

但即使这样似乎也有问题。在我看来,连字符应该是黑色的,连字符算法似乎错过了在“水果”和“树”之间换行的机会,也完全忽略了max-width这是为容器设置的。


实际上,它确实可以与spans,在许多浏览器中。您刚刚使用了一个无法识别的单词。下面是一个普通英文单词的示例,适用于 IE(也应该适用于 Edge)和 Win7 上的 FF:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, user-scalable=yes, initial-scale=1">
    <title>Demo</title>
<style>
div {
    max-width: 50px;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    font-size: 20px;
    background-color: #eee;
}
span {
    color: red;
}
</style>
</head>
<body>
    <div>
        <p>Incomprehensibilities</p>
        <p>Incom<span>pre</span>hensibilities</p>
    </div>
</body>
</html>

它在 Win 上的 Chrome 中不起作用,因为目前(2018 年 6 月)仍然根本不支持连字符。它也不适用于任何 iOS 浏览器。所以你毕竟必须使用软连字符。但正如您所说,您对该机制感到好奇,我认为仍然值得发布这个答案。

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

为什么连字符不能与内部 一起使用? 的相关文章

  • 为了提高性能,我应该将 javascript 和 css 文件合并为一个吗? [复制]

    这个问题在这里已经有答案了 YSlow 报告表明 我在特定页面上有许多 javascript 文件 这些文件应该合并为一个 我在特定页面上有许多 css 文件 这些文件应该合并为一个 Q1 任何机构都可以详细说明这一点 如何才能快速地将它们
  • jQuery 相当于 YUI StyleSheet Utility?

    jQuery 或其插件之一 是否具有与YUI 样式表实用程序 http developer yahoo com yui 3 stylesheet StyleSheet Utility 能够从头开始创建新的样式表 以及修改作为来自同一域的元素
  • CSS 向后/反向过渡

    我想知道是否有任何方法可以使用相同的 CSS 过渡实例来向前移动然后向后 反向移动 例如 假设我有这样的转变 webkit keyframes fade transition from opacity 0 to opacity 1 以及这次
  • 适用于所有浏览器的 Center HTML 5 音频播放器

    我尝试过这样的代码 div style margin 0 auto div
  • 如何在不使用 Flexbox 的情况下水平对齐元素?

    有没有一种方法可以在不使用的情况下将 Web 组件彼此相邻对齐Flexbox 我知道它是一个很棒的工具 但不幸的是它不适用于 IE 9 或 10 我希望链接内的文本显示在图像旁边 JSFiddle 显示了工作代码 但是使用 FlexBox
  • 使用 javascript 加载不同的 CSS 样式表

    我需要使用 javascript 根据正在传递的 URL 变量加载不同的样式表 场景是这样的 我们需要使用一个 CSS 样式表和一个不同的样式表来维护一个移动网站 当通过 iOS 应用程序中加载的 Web 视图访问该页面时 该样式表将用于设
  • 带有 selectInputs 的 DT 数据表在选择后重置回左侧

    我在 Shiny 应用程序的 DT 数据表的列中使用 selectInputs 感谢一些帮助here https stackoverflow com questions 74620665 vertically center selectin
  • vue基于媒体查询绑定值

    carousel 3d display 3 width 150 height 150 我想根据媒体查询设置属性绑定 e g 当屏幕宽度 gt 960px 时 显示应变为 5 您可以尝试绑定display组件属性的值
  • 单击即可切换背景颜色和过渡

    这看起来应该很容易 但我真的找不到办法做到这一点 动画 http doir ir css gif http doir ir css gif 当您单击这些相应的链接时 我需要更改和过渡页面的背景颜色 我见过的最接近触发这种类型转换的事情是 仅
  • 我可以跳过 HTML5 中“style”标签中的属性“type”吗? [复制]

    这个问题在这里已经有答案了 根据W3学校 http www w3schools com tags tag script asp 我可以跳过属性type对于标签script在 HTML5 中 Evidence HTML 4 01 和 HTML
  • 使用 div 代替 table 进行布局

    我想知道什么方法最好将表格布局替换为 div 我自己也尝试过一些 但它让我的 4x4 div 非常混乱 我猜当有经验做这样的事情时 这并不是很难完成 但我对 div 都是新手 并试图学习这一点 看看这个并分享您对表格是否应该保持原样或者是否
  • 这是浏览器错误吗?具有背景颜色的变量的继承

    我发现在css中的变量函数内声明时无法让背景颜色继承另一个元素的背景颜色 这是我遇到的一个例子 这是一个错误吗 div span border 1px solid black padding 10px margin 10px Backgro
  • 网页CSS覆盖ckeditor 3样式

    我有一个加载 screen css 的页面 其中包含evil规则 由于各种原因我无法删除或修改 a background red important I use CK编辑器3 x http ckeditor com 在同一页面上 问题是 无
  • 我们可以为 border-bottom 属性设置渐变颜色吗? [复制]

    这个问题在这里已经有答案了 我们可以添加渐变颜色吗border bottomhtml块元素的属性 边框应该与此类似 谁能告诉我这在 CSS3 中是可能的吗 我像这样尝试过 但无法让它工作 border gradient border bot
  • 如何获取div背景图像上的锚标记?

    HTML div a href http www facebook com au a div css facey float left width 32px height 32px background url file C Users U
  • 为什么我的 css 在 IE9 中无法正确显示?

    几个小时前 我对我的 WordPress 主页做了一个小改动 现在 IE9 中出现了一些以前不存在的随机奇怪 CSS 问题 我曾使用 IE 的开发工具来尝试找出问题所在 但该工具与 firebug 相比实在是太糟糕了 而且问题只出现在 IE
  • 将 WooCommerce 属性标签替换为每个的自定义图像

    我正在做一个项目 我需要一些团体的帮助 我正在使用 woocommerce 产品系统 在商店存档页面产品上我显示属性标签 属性值 就像文本一样 属性标签 属性值 例如传输 手动 有没有办法将属性标签显示为图像 我无法添加 html 代码 i
  • Twitter Bootstrap:按钮下拉列表中的图标

    Here http jsfiddle net DjHyQ 是 jsfiddle 上的链接 其中包含一些演示 它在 Chrome 甚至 IE 中运行良好 但在 FF 中图标会下降 我怎样才能解决这个问题而不用负边距或类似的东西来提升它们 我不
  • 使用 HTML 标签作为背景图像而不是 CSS background-image 属性?

    我需要使用 html img 标签作为背景图像 div 然后我将放置一个 p 的内容 我已经尝试过 但似乎无法让它们正确显示 我使用了相对位置 负值的边距 任何建议或指出我正确的方向将不胜感激 p div img src http www
  • 如何防止外部 CSS 添加和覆盖 ReactJS 组件样式

    我有一个自定义的 ReactJS 组件 我想以某种方式设置样式 并将其作为插件提供给许多不同的网站 但是 当网站使用全局样式 Twitter bootstrap 或其他 css 框架 时 它会添加并覆盖我的组件的样式 例如 全局 css l

随机推荐

  • 处理多种权限类型的最佳方法是什么?

    我经常遇到以下场景 我需要提供许多不同类型的权限 我主要使用 ASP NET VB NET 和 SQL Server 2000 Scenario 我想提供一个可以处理不同参数的动态权限系统 假设我想授予某个部门或特定人员访问应用程序的权限
  • 是否仍然建议使用 AsyncTask 在后台加载 listView 项目?

    背景 我听说有一些在后台加载数据的新解决方案比 AsyncTask 更值得推荐 例如loaders http developer android com reference android content Loader html 问题 As
  • 密码哈希

    我正在创建一个存储用户密码的网络应用程序 我想知道程序员可以用来哈希密码的最佳方法 算法是什么 关键的强化技术 例如bcrypt http en wikipedia org wiki Bcrypt or PBKDF2 http en wik
  • 在 python 3.7.2 中导入 numpy 后的 RAM 使用情况

    我使用 python 3 7 2 win32 运行 conda 4 6 3 在 python 中 当我导入 numpy 时 我发现 RAM 使用量增加了 80MB 由于我使用的是多处理 我想知道这是否正常 是否有办法避免这种 RAM 开销
  • Inno 安装脚本中的 HTTP POST 请求

    我想通过 POST 将 Inno 安装过程中从用户收集的一些信息提交到我们的服务器 明显的解决方案是包含一个 exe 文件 安装程序会将其提取到临时位置并使用参数启动 但是 我想知道 有没有更简单 更好的方法 基于 jsobo 使用建议Wi
  • 使用jquery更改asp.net图像url

    我正在尝试使用 jQuery 每 15 秒更改一次图像 以便这适用于所有浏览器 我尝试删除此标记并将 div 留空并使用 jQuery 更改背景图像 url gt 如何使用 jQuery 更改图像 url 鉴于此标记 div div
  • 按钮图像未显示在 UItextfield 的 rightView 中

    我创建了一个按钮图像 并使用 Sa wift 将其放置在 UITextField 密码 的 rightView 上 我想在密码字段中创建切换按钮隐藏 显示安全文本 右视图中显示的图像 Code func passwordToggleButt
  • 如何使用 Confluence 的 REST API 创建新页面? [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我需要使用rest api 在 confluence 中创建新 wiki 页面的工作示例 我更喜欢在特定空间和特定页面下创建新页面
  • Android 中的列表视图到 pdf

    我有一个自定义列表视图 我想从整个列表视图制作pdf 我参考了很多帖子并实现了下面的代码 该代码将我的列表视图转pdf 但问题是它不包含整个列表视图项目 pdf 中仅提供前几项 我的转换函数列表视图转pdf is fab setOnClic
  • Thor 可执行文件 - 忽略任务名称

    雷神维基页面 制作可执行文件 https github com wycats thor wiki Making An Executable 向您展示如何创建由 thor 支持的 CLI 命令 如下所示 bash mythorcommand
  • 逆 Box-Cox 变换

    我在用SciPy 的 boxcox 函数 http docs scipy org doc scipy dev reference generated scipy stats boxcox html执行一个Box Cox 变换 http en
  • 从 Autofac 容器解析通用接口的 IEnumerable

    我不确定这是否可能 我见过其他一些帖子提出类似的问题 但没有一个得到满意的答案 我想要做的是解析 Autofac 中具有不同泛型类型的接口集合 所以类的构造函数看起来像这样 public class SomeClass
  • Ruby:邮件 gem 在邮件中的 60 个字符后添加 \r\n

    我要移植Actionmailer x509 https github com petRUShka actionmailer x509到 Rails 3 为了做到这一点 我尝试从带有签名电子邮件的大字符串创建 Mail 对象 您可以在这一行看
  • 设置单元格数据后如何更新 UICollectionView 中单元格的大小?

    所以我有一个 UICollectionView 每个单元格中都有不同大小的不同图像 当调用 cellForItemAtIndexPath 时 我使用一种方法更新 UICollectionViewCell 该方法在 Web 上异步获取图像并显
  • Ruby Time.parse 给我超出范围的错误

    我正在使用 Time parse 从字符串创建 Time 对象 因为某些原因 Time parse 05 14 2009 19 00 导致参数超出范围错误 而 Time parse 05 07 2009 19 00 does not 有任何
  • 获取数组长度的指针数学[重复]

    这个问题在这里已经有答案了 I do not believe this a duplicate see below 我发现这个问题几乎是精确重复的 但我认为答案未能分析漏洞 看 我知道通常的方法是计算sizeof array sizeof
  • UISplitViewController 可以作为 UINavigationController 中的根控制器吗?

    界面生成器不允许您添加 UISplitViewController 作为 UINavigationController 的根控制器 我还尝试以编程方式创建 UINavigationController 并将其根视图控制器设置为 UISpli
  • TinyMCE 输入以相反顺序写入

    我面临这个问题 每当我输入 TinyMCE 时 我的光标会自动向左移动 最终从右向左写入文本 它只发生在我部署的应用程序中 但如果我在我的机器上本地运行代码 同样可以正常工作 发生这种情况的任何可能原因 相同的屏幕截图 https i st
  • 如何在不支持“PrivateObject”的.Net Core应用程序中对私有方法进行单元测试

    我的应用程序是一个 NET Core应用 我有一个public如下所示的方法 它有两个私有方法 public bool CallService JObject requestJsonObj out Status status bool pr
  • 为什么连字符不能与内部 一起使用?

    我正在尝试让连字符处理具有以下内容的文本 span 里面的元素用于突出显示 这似乎打破了连字符算法 有什么方法可以修复这种行为 使连字符的放置方式与没有连字符的位置相同 span 元素 我不是在问像这样的解决方法 shy 代码 沙箱 htt