<分区>
我有一个 asp.net 应用程序,它带有一个宽度较大且文本垂直居中对齐的下拉列表控件。
昨天我的下拉列表控件突然丢失了它的 css 宽度/对齐属性,在浏览器 (IE 10) 上显示不正确。
经过几个小时的搜索,我注意到这是因为我不小心点击了地址栏(网址旁边)的“兼容模式”按钮。
关于我的帖子的详细信息:Vertically align text in a asp.net dropdown list control .
在按下兼容模式按钮后,它又开始正常工作了。
自从那件事发生在我身上后,我想知道它可能会发生在最终用户身上,因此也会向他们错误地显示它。
有谁知道如何避免这种情况并创建一个下拉列表/网络应用程序,如果用户不小心点击该按钮,它不会取消格式化?
顺便说一下,我还使用 IE 开发工具在旧版浏览器上测试了我的页面,发现它在 IE 9 和 8 上也能正常工作,但下拉列表在 IE7 上乱七八糟。
谢谢!
最佳答案
你最好的选择是添加一个条件 css 引用,如果 IE 浏览器版本低于给定数量,它就会启动。例如,如果您添加一个新的 css 文件,其中包含特定于 IE7 的样式。这些被注释掉的部分是 IE hack。除非浏览器是 IE7,否则此样式表不会生效。
<!--[if IE 7]>
<link rel="stylesheet" type="text/css" href="/styles/main.IE7.css"" />
<![endif]-->
那么你需要调整这个样式表中的样式以适应 IE7。
此外,有时 IE 会设置为以兼容模式显示 Intranet 站点。请参阅此以在 web.config 中添加一个设置,这将阻止此 X-UA-Compatible is set to IE=edge, but it still doesn't stop Compatibility Mode
关于html - IE10 兼容模式下的 Asp.net Web 应用程序问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20948473/