html - 浏览器不使用 MediaQuery 属性加载 CSS

标签 html css

我有一个来自在线银行公司的 HTML 文件,该文件在我公司的多台计算机 (Windows 7 x64 Pro) 上无法正确显示。该页面是银行的登录页面。

经过大量研究,我发现问题是页面的主要 CSS 样式表没有被浏览器加载(在 Chrome、IE 和 Firefox 上测试,都更新到最新版本)。

给定以下代码:

<link rel="stylesheet" type="text/css" media="screen, print" href="https://www.ib3.bradesco.com.br/ibpf/conteudo/css/geral/estrutura.css?Versao=6.css" />

如果我删除属性 media="screen, print" CSS 被加载并且一切正常。

有人知道这是怎么回事吗?为什么 CSS 没有加载 media

最佳答案

根据 specs , 有效。虽然我不知道为什么它不起作用,但这里有一个实用的解决方案:

<link rel="stylesheet" type="text/css" media="screen" href="https://www.ib3.bradesco.com.br/ibpf/conteudo/css/geral/estrutura.css?Versao=6.css" />
<link rel="stylesheet" type="text/css" media="print" href="https://www.ib3.bradesco.com.br/ibpf/conteudo/css/geral/estrutura.css?Versao=6.css" />

因为在任何时候只有一个条件可以为真,它几乎不会增加任何开销,除了 <link /> 的大小。以字节为单位的标记。

请注意,如果条件都为真,则此方法(理论上)不会很好,因为样式表会加载一次(第二次从缓存中获取)但会解析两次。当然,它会奏效,但开销会大得多。


如果您无法控制页面的来源,您最多只能将问题告知页面的所有者(银行)。

关于html - 浏览器不使用 MediaQuery 属性加载 CSS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44789757/

相关文章:

css - 无法使第一个 <option> 不可见

css - Twitter Bootstrap 带导航 - 响应问题

html - 如何设计网页以在粘贴到 MS Word 时将格式丢失降至最低

css - 我可以只使用数字来命名 CSS 类吗

html - Internet Explorer 上的格式与其他浏览器不匹配

javascript - 如何让两个 Javascript div 在彼此重叠时可以拖动?

jquery - 无法循环 .click 函数(创建多个按钮)

javascript - 通过另一个数据属性作为标识符获取元素的数据属性

javascript - 如何移动CSS按钮?

jquery - 使用 jQuery 水平滚动背景图像