Javascript 现代化基础

Javascript 现代化基础,javascript,modernizr,Javascript,Modernizr,我在我的页面中包括了Modernizer,但是如果我不能访问那些浏览器,我将如何测试它在IE6-7中是否工作?做一些类似于: 基本CSS: .accslide { height: 0px; width: 0px; overflow: hidden; } input[type="radio"]:checked+label ~ .accslide { width: 100%; height:auto; } 如果第二

我在我的页面中包括了Modernizer,但是如果我不能访问那些浏览器,我将如何测试它在IE6-7中是否工作?做一些类似于:

基本CSS:

    .accslide {
     height: 0px;
     width: 0px;
     overflow: hidden;
    }
    input[type="radio"]:checked+label ~ .accslide {
     width: 100%;
     height:auto;
    }
如果第二个选择器不启动,则内容将不可见

如果不支持CSS3,是否有方法仅加载Modernizer?
如何测试Modernizer是否在我的CSS选择器上工作?

如果给定浏览器不支持,Modernizer将不会启用CSS功能(如较新的选择器)。它主要是一个功能检测库。

Modernizer没有向浏览器添加任何功能,只是检查现有功能。如果您想测试选择器支持,您需要添加它

然而,即使这样,你也无法实现你想要实现的目标,我想,当你选中单选按钮时,它会显示
accsile
元素。如果希望支持IE6和IE7,您很可能需要使用javascript——IE6甚至不支持
[type=“radio”]
选择器,因此您也不能使用它

您需要向单选按钮添加一个单击/更改处理程序,并用一个类更新其容器,以正确获得所需的功能,尤其是支持IE6

下面是一个CSS的示例:

#radioContainer .accslide {
 height: 0px;
 width: 0px;
 overflow: hidden;
}
#radioContainer.on .accslide {
 width: 100%;
 height:auto;
}

现在,在javascript中,当有人单击/更改单选按钮时,只需在
#radioContainer
元素中添加/删除
上的
。注意:我给了#radioContainer一个ID b/c IE6不会从两个css类名中为元素设置样式(最终,您将不支持IE6,只需提供
.radio container.on
,这对IE6不起作用)

您正在使用Chrome吗?您可以使用如下服务:
http://www.browserstack.com/test-in-internet-explorer
我有一份chrome,是的。Browserstack看起来不错,但我现在买不起。我可以使用它吗?这样我的内容就不会在旧浏览器上消失?示例:改用selectivizr?虽然不熟悉selectivizr,但它似乎可以完成这项工作:@JenniferMichelle-selectivizr很棒,前提是您还使用了它所挂钩的其他库(如jQuery等)。如果您没有使用其中的一个,那么ie7.js确实也可以完成这项工作。更多信息,请参阅。如果我只是添加一个javascript来切换这些东西,那么css3做同样的事情会不会变得不稳定?或者我应该对JS进行某种条件加载?好吧,我只需要使用javascript解决方案并将CSS3选择器一起转储。我已经用适用于所有浏览器的示例CSS更新了anser。当我浏览caniuse.com时,似乎移动浏览器对css3的支持远远超过了对JS的支持。在我孩子的Android上,我们也必须禁用JS才能让谷歌正常工作。由于手风琴在移动设备上非常有用,我想先使用css3,然后使用javascript回退,听起来很奇怪。当然,但你的问题要求IE6-7支持,我就是这样回答的。如果我是你(显然,我不知道你的需求),我就不会担心IE6,甚至IE7,如果可能的话,这将打开一个更多可能性的世界。