替代样式表在iOS5中不起作用

替代样式表在iOS5中不起作用,ios5,css,Ios5,Css,我有一个使用替代样式表的网站,并使用iOS4与iPad进行了合作。然而,iPad运行的iOS5并没有这样做。我还发现该网站在我运行iOS4的iPad上运行良好,但在运行iOS5的iPad上运行不好,这表明这可能是浏览器问题 我的网站有以下代码片段 <link rel="alternate stylesheet" id="smallScr" title="smallScr" type="text/css" href="/style/smallscreen.style.css" /> &

我有一个使用替代样式表的网站,并使用iOS4与iPad进行了合作。然而,iPad运行的iOS5并没有这样做。我还发现该网站在我运行iOS4的iPad上运行良好,但在运行iOS5的iPad上运行不好,这表明这可能是浏览器问题

我的网站有以下代码片段

<link rel="alternate stylesheet" id="smallScr" title="smallScr" type="text/css" href="/style/smallscreen.style.css" />
<link rel="alternate stylesheet" id="microScr" title="microScr" type="text/css" href="/style/microscreen.style.css" />
.
.
var varDevice = 'iPad';
alert('detected small (ipad) screen device = ' + screen.width + ' x ' + screen.height);
setActiveStyleSheet('smallScr');

.
.
var varDevice='iPad';
警报('检测到的小(ipad)屏幕设备='+屏幕宽度+'x'+屏幕高度);
setActiveStyleSheet('smallScr');
在这两种情况下,警报都会被调用,但我的备用工作表不会应用到运行iOS5的iPad上

有没有人遇到过这个问题并找到了解决方案

谢谢


Rob也有同样的问题,他查看了规范,找到了一个在大多数浏览器中都能正常工作的解决方案

在html标题中包括以下内容:

<meta http-equiv="Default-Style" content="">

我也有同样的问题。ios4或任何其他浏览器,交换样式表都没有问题,但ios5根本不起作用。它将加载默认样式表,然后当它切换到备用样式表时,没有任何样式表处于活动状态。经过一些尝试和错误,我得到了以下为我工作。虽然不完全有效,但似乎确实有效

$('link[rel*=stylesheet]')。每个
更改为
$('link')。每个
this.disabled=false
更改为
$(this.attr('disabled',false))似乎起了作用

<link rel="stylesheet" type="text/css" href="style.css" title="style" media="screen" />
<link rel="alternate stylesheet" type="text/css" href="style2.css" title="style2" media="screen" />


var availableStylesheets = [ "style", "style2" ];

function stylesheetSwitch( styleName )
{
$('link').each( function() {
    var inStyles = false;
    for( var i=0; i < availableStylesheets.length; i++){
        if( $(this).attr('title') == availableStylesheets[i] ){
            inStyles = true;
        }
    }
    if(inStyles){
        $(this).attr( 'disabled', true );
        if ($(this).attr('title') == styleName) {
            $(this).attr( 'disabled', false );
        }
    }
}); 
}

var availableStylesheets=[“样式”,“样式2”];
函数stylesheetSwitch(styleName)
{
$('link')。每个(函数(){
var inStyles=假;
对于(变量i=0;i
<link rel="stylesheet" type="text/css" href="style.css" title="style" media="screen" />
<link rel="alternate stylesheet" type="text/css" href="style2.css" title="style2" media="screen" />


var availableStylesheets = [ "style", "style2" ];

function stylesheetSwitch( styleName )
{
$('link').each( function() {
    var inStyles = false;
    for( var i=0; i < availableStylesheets.length; i++){
        if( $(this).attr('title') == availableStylesheets[i] ){
            inStyles = true;
        }
    }
    if(inStyles){
        $(this).attr( 'disabled', true );
        if ($(this).attr('title') == styleName) {
            $(this).attr( 'disabled', false );
        }
    }
}); 
}