html - IE8删除CSS属性

标签 html css internet-explorer web-applications

我终于完成了一个 Web 应用程序,现在我必须使其与 Internet Explorer(至少 8)兼容。现在几乎完成了,除了一个地方,IE8 显然删除了我定义的一些 CSS 格式。

我上传了一些 generating Perl Code 的截图,如何Firefox (+ Firebug)呈现它以及如何呈现 IE8 (+ "Web Developer Tools")呈现它。

IE8 似乎忽略了我创建的每个元素的宽度、高度、左侧和顶部。谷歌似乎对这种行为一无所知。谁能帮我解决这个问题?

选修课

如果您想知道它应该做什么:应用程序的这一部分在 Storyboard(有点像在线漫画创作者)上创建一个叠加层,并用用户创建的所有面板填充屏幕。它缩小/增大预览,以便在不拉伸(stretch)图像的情况下尽可能多地用完整个屏幕,并将它们排列在网格中(1x1、1x2、2x2、2x3 等)。然后可以通过单击屏幕标题来重命名屏幕,可以通过四处拖动来对它们进行排序,也可以通过单击鼠标悬停时出现在右上角的删除按钮来删除它们(就像 iPhone 上的徽章一样)。这就像一个魅力,我花了一些时间让 CSS 正常工作。

编辑 1

代码需要重构(这是我要做的最后一件事)所以代码中有一些可疑的 CSS。别介意:)

编辑2

我可能找到了一种通过 my Public Folder 与您分享我的代码的方法.只需下载 storyboard.zip 并打开 storyboard.html。

编辑3

doctype 的伙计们的帮助下,我能够找到并 discover错误。现在这很麻烦,因为我需要 window.innerHeight 和 window.innerWidth 的值才能调整预览,以便尽可能多地填满屏幕。你们知道替代方案吗?

最佳答案

如果没有更多的代码/演示,这真的不可能说出来 — 看起来你有相当多的 CSS,我们只能在屏幕上看到一些。然而,

IE8 just seems to ignore my width, height, left and top of every Element that is created.

通常是由于缺少宽度和高度的“px”单位引起的,但任何 CSS 解析错误都可能导致它。我们看不到生成的 HTML 源代码,但是源代码中的反斜杠是什么?它们会被您正在使用的任何语言字符串格式所取代吗?尝试将 style 属性的内容复制/粘贴到 CSS validator 中以检查是否存在明显错误。

黑色覆盖层的透明度也存在问题。根据 DOM 判断,IE 无法解析“filter”属性,您如何设置它?由于您似乎在使用 jQuery,因此您应该能够使用 element.css('opacity', .5) 从脚本中设置它。 (编辑:我猜你实际上是在这样做,从 IE 看​​到的 'zoom: 1' 判断。但是很明显 filter 属性被破坏了;如果它不能 parseInt 值。你将什么作为值传递给 .css()?)

我也不确定是什么:

style="width:auto;height:auto;position:static;

是为了,无论如何这些都是默认值。此外,max-widthwidth 一样,不适用于内联元素。

额外的挑剔:$screen_name(以及您模板化为 HTML 的任何文本字符串)需要进行 HTML 转义,否则您可能存在跨站点脚本漏洞。纯数字 id 是无效的。

关于html - IE8删除CSS属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1486218/

相关文章:

html - bootstrap 4 轮播全屏和自动裁剪

javascript - 获取可从所有页面访问的汉堡菜单

html - 如何在背景主体中添加多个图像

javascript - jquery ajax到文件://not working in IE

java - 如何使用 jsoup 解析 HTML 表格?

javascript - 顶部菜单和 2 列表格的 CSS 帮助

javascript - 分页表的动态索引

html - Span 中的垂直对齐文本

javascript - 如何在ajax调用中打印ie窗口中文件的值

css - ie 中 Bootstrap css 中的 Topbar 输入问题