我正在为德国一家大公司开发内部网门户。由于大公司的技术流程有时会运行得慢一点,他们仍然使用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.77763.0
已安装。
我们都使用Windpw 10,并将德语设置为主要语言(我认为IE11和Edge都使用操作系统语言,没有单独的浏览器语言(。
我用HTML语言属性集和非集进行了测试。对我来说没有区别(两种情况都有效(,对我的客户来说也没有区别(两者都无效(。
目前我还不知道为什么连字符只能在我的机器上工作。是否有我不知道的背景?有什么提示我可以调试它吗?他们是否可能通过Windows组策略被(取消(激活?
致以问候和感谢。
您的客户端可能缺少旧版MS浏览器的连字符词典。
不幸的是,我不知道Windows Update软件包实际上支持直接在Windows 10中安装;带有IE 11拼写检查器的MSU软件包(KB2841134(似乎是最新的可供下载的软件包,但它们不能直接安装("更新不适用于您的计算机"(。
然而,字典似乎可以通过文件复制进行部署。每个字典由三个名为MsSp7xx.alc
、MsSp7xx.dub
和MsSp7xx.lex
的文件组成,其中xx
是语言代码(例如en-US
或de
等(
词典安装在此处:%WINDIR%GlobalizationELSSpellDictionaries
要获取词典,您可以尝试以下操作:
-
在此处下载包含词典的MSU文件:https://www.catalog.update.microsoft.com/Search.aspx?q=2841134
-
在命令行上从MSU提取字典文件:
expand ie-spelling-*.msu -f:Windows6.3-KB2849696-x86.cab .
md ie-spelling
expand Windows6.3-KB2849696-x86.cab -f:mssp7*.* -r ie-spelling
- 将三个文件从
ie-spelling
目录的子目录复制到%WINDIR%GlobalizationELSSpellDictionaries