【发布时间】:2020-10-15 19:42:52
【问题描述】:
我正在为德国的一家大公司开发 Intranet 门户。 由于大公司的技术流程有时运行速度较慢,因此他们仍然使用 IE11 和旧的 MS Edge 浏览器。
由于这些旧浏览器支持 CSS 连字符:auto(参见:https://caniuse.com/css-hyphens),我开发了一个小 CSS,它可以启用 CSS 连字符:
.hyphens {
hyphens: auto;
-ms-hyphens: auto;
}
所以无论我在哪里设置类“连字符”,CSS 连字符都会被激活。
这适用于我的计算机安装的 IE11 和旧版 Edge,但不适用于我客户的客户端。在他们的 Edge 和 IE11 浏览器中都没有。
我检查了这些计算机上的 CSS 是否正确加载。如果我添加这样的规则
background: red;
对于“连字符”类,它会被正确应用。只是没有应用连字符。
我发现我的本地 Edge 版本与我客户的版本不同。 我在版本中使用 Edge 和 IE11
Microsoft Edge 42.17134.1098.0
Microsoft EdgeHTML 17.17134
IE11:11.1667.17134.0
而我的客户有
Microsoft Edge 44.17763.831.0
Microsoft EdgeHTML 18.17763
IE11:11.1457.17763.0
已安装。
我们都使用 Windpw 10 并将德语设置为主要语言(我认为 IE11 和 Edge 都使用 OS 语言,没有单独的浏览器语言)。
我使用 HTML 语言属性集进行了测试,但未设置。对我来说没有区别(两种情况都有效),对我的客户来说没有区别(两种情况都不起作用)。
目前我不知道为什么连字符似乎只在我的机器上工作。 可能有一些我不知道的设置吗? 任何提示我如何调试它? 它们是否有可能通过 Windows 组策略被(停用)激活?
问候和非常感谢。
【问题讨论】:
-
您的客户端可能缺少旧版 MS 浏览器的连字符字典,例如microsoft.com/en-us/download/details.aspx?id=40289
-
这很好。我刚刚发现 HTML textareas 中的拼写检查在我的 IE11/Edge 安装中有效,而在我客户的一台计算机上拼写检查不起作用。如何检查是否安装了 IE11/Edge 词典或安装了哪些词典?我猜它隐藏在 Windows 设置中的某个地方?
-
您是否尝试使用语言属性进行测试?如果不行,我建议尝试通过在代码中添加
<html lang="en">来进行测试,看看它是否有效。 -
确实,我用
<html lang="en">测试过,对我客户的客户端电脑没有任何影响。 -
我做了更多的研究,发现连字符需要这个代码。您也可以尝试使用它进行测试并检查结果。
<meta charset="utf-8"> <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="fr-FR">
标签: css windows internet-explorer-11 microsoft-edge css-hyphens