Javascript 自动化及;简化交叉杆支撑

Javascript 自动化及;简化交叉杆支撑,javascript,html,css,cross-browser,Javascript,Html,Css,Cross Browser,我为支持旧的不兼容浏览器而做的很多事情似乎(1)是重复的,而且(2)很容易忘记。有两件事向我表明,它们可能应该由计算机而不是我的大脑来处理 例如,我使用的任何地方 .element-selector { display:inline-block; } …为了支持IE7,我实际上需要应用附加规则 .element-selector { display: inline-block; /* IE7 */ zoom: 1; display: inline;

我为支持旧的不兼容浏览器而做的很多事情似乎(1)是重复的,而且(2)很容易忘记。有两件事向我表明,它们可能应该由计算机而不是我的大脑来处理

例如,我使用的任何地方

.element-selector {
    display:inline-block;
}
…为了支持IE7,我实际上需要应用附加规则

.element-selector {
    display: inline-block;
    /* IE7 */
    zoom: 1;
    display: inline;
    /* End IE7 */
}
…以便在IE7中正确渲染

我不确定我到底想要什么。但似乎应该有一些东西,我可以设置“为我做这件事”。也许是一些静态分析我的CSS文档并插入这些东西的脚本?一些疯狂的jQuery插件将它们插入DOM?一些CSS生成伪语言,允许自动创建CSS文档

自动化和简化交叉划船机 支持

我假设你说的是“交叉浏览器”,你主要谈论的是Internet Explorer。它是最大的麻烦制造者,而且一些旧版本的应用非常广泛。其他浏览器的旧版本的使用是可以忽略不计的,你可以忘记它们

看起来你(明智地)已经忘记了旧版本的非IE浏览器;要使(您的示例)
display:inline block
在Firefox2中工作

一些疯狂的jQuery插件 让他们进入DOM

不是jQuery:),但这解决了许多问题:

IE9.js-将MSIE5.5-8升级为 与现代浏览器兼容

我必须指出,当JavaScript关闭时,任何基于JavaScript的东西显然都无法工作

也许是一些静态的脚本 分析我的CSS文档并插入这些 事情

我能想到的最接近的事情是:

欢迎使用IE6 CSS修复程序:初学者 工具包页面。专门设计的工具 减轻ie6 css的痛苦 调试器。。这是非常重要的 需要注意的是,此工具是 不是奇迹般的解决办法。。在某些方面 它甚至可以带来环境 新的错误,所以在 您可以添加一个 完全修复。我也知道这是真的 输出不干净、精简和优化 css代码。。这个工具被简化了 减少猴子工作时 正在启动ie6 css修复文件。信息技术 应用一系列基本修复程序 众所周知,他们能够克服许多问题和挑战 造成尽可能小的伤害


它只会特别尝试解决与IE6相关的问题,谢天谢地,这些问题变得越来越不重要。

类似Sass或更少的东西可以帮助您解决这些问题。您可以定义mixin并使用它们

.inline-mix {
    display: inline-block;
    /* IE7 */
    zoom: 1;
    display: inline;
    /* End IE7 */
}
.element-selector {
    .inline-mix;
}

这不是一个自动化的解决方案,但它可以帮助您稍微干涸css。

我为一家大型银行的合规项目团队工作,为他们的信用卡业务重做了1000多个网站。对于IE6以下的用户,要求非常严格,并规定了向后兼容性、屏幕阅读器支持以及缺乏javascript/图像。使其快速可行的唯一工具是

重置使我们回到了基线,并消除了相当多的IE特定黑客的需要(他们已经由代码完成)。网格消除了IE的盒型缺陷,并帮助确保布局不会占用生产过程中的时间。节省的时间使我们超越了生产预期,并进行了更彻底的测试,这是一场全面的胜利


在我任职期间,我不允许使用JQuery,使用了极其稀疏的Javascript,并在数百页上总共进行了3次IE黑客攻击。唯一可行的方法是使用网格。这不是一个超高科技、性感的答案。但是,我坚信一个经过战斗测试的框架可以加快生产速度。

您应该指出,他要么使用
*display:inline
将其仅提供给IE7(无效的CSS,但不管我喜欢什么方法)。如果不是这样,SASS/LESS是否可以帮助处理仅限IE7的规则?(我不知道SASS或更少)是的,你是对的,我们主要考虑的是只支持IE back-7和替代浏览器back-FF3-ish。很多更常见的IE7问题已经被解决了——那些根据定义不存在的问题很难用代码自动修复,或者脚本会修复它们。很多IE7问题都是通过应用来解决的,通常是使用
zoom:1
——但您不能将其添加到所有内容中,因为在其他情况下,它会导致问题。我想我想说的是,你想要的东西不存在(除了我回答中的想法),也不值得制作——IE7的使用率非常低。