我在sites / all / js中有一个文件css_browser_selector.js文件,该文件的代码如下:
function css_browser_selector(u){var ua=u.toLowerCase(),is=function(t){return ua.indexOf(t)>-1},g='gecko',w='webkit',s='safari',o='opera',m='mobile',h=document.documentElement,b=[(!(/opera|webtv/i.test(ua))&&/msie\s(\d)/.test(ua))?('ie ie'+RegExp.$1):is('firefox/2')?g+' ff2':is('firefox/3.5')?g+' ff3 ff3_5':is('firefox/3.6')?g+' ff3 ff3_6':is('firefox/3')?g+' ff3':is('gecko/')?g:is('opera')?o+(/version/(\d+)/.test(ua)?' '+o+RegExp.$1:(/opera(\s|/)(\d+)/.test(ua)?' '+o+RegExp.$2:'')):is('konqueror')?'konqueror':is('blackberry')?m+' blackberry':is('android')?m+' android':is('chrome')?w+' chrome':is('iron')?w+' iron':is('applewebkit/')?w+' '+s+(/version/(\d+)/.test(ua)?' '+s+RegExp.$1:''):is('mozilla/')?g:'',is('j2me')?m+' j2me':is('iphone')?m+' iphone':is('ipod')?m+' ipod':is('ipad')?m+' ipad':is('mac')?'mac':is('darwin')?'mac':is('webtv')?'webtv':is('win')?'win'+(is('windows nt 6.0')?' vista':''):is('freebsd')?'freebsd':(is('x11')||is('linux'))?'linux':'','js']; c = b.join(' '); h.className += ' '+c; return c;}; css_browser_selector(navigator.userAgent);
我在上面编写的代码中使用该浏览器的类在不同的浏览器上应用了不同的css。代码适用于每个浏览器,但它不适用于IE6,IE7。在drupal 6中有两个默认文件ie6和ie7但这些文件也无法正常工作。我不知道如何在IE浏览器中进行更改。您的帮助将不胜感激。
提前谢谢。
答案 0 :(得分:0)
我猜你有很多css重复。我敢打赌,只有IE不能正常工作而且css用于休息是很常见的(如果你想让任何人读你的代码,不要粘贴它的内联/缩小版本)。
看看这个,这就是大多数人这样做的方式。 http://www.webdevout.net/css-hacks#conditional_comments
如果你想在每个浏览器上使用非常不同的CSS,请将JS的代码更改为可修改的版本,或者将此http://www.webdevout.net/css-hacks#conditional_comments-css_hack与您的解决方案结合使用,以便以丑陋的方式执行此操作。
答案 1 :(得分:0)
使用此模块http://drupal.org/project/conditional_styles
这是非常直接的如何做到只启用模块,将此行添加到您的主题.info文件
stylesheets-conditional[IE 7][all][] = ie7.css
然后将文件ie7.css添加到您的主题。