モバイルブラウザ用に特定のCSSを提供する必要があります。私はメディアのサイズや形状によってモバイルブラウザーを検出したくありません。私はnavigator.userAgent.matchを使ってやりたいと思います。サーバ向けのCSSをモバイル向けに使用する場合
ここでは私が作業しているコードのスニペットですが、うまく動作していないようです。ここでの目的は、javascriptがモバイルブラウザを検出してmobile.cssのhrefを提供し、それ以外の場合は通常のCSSを提供するということです。
<!DOCTYPE html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta name=viewport content="width=device-width, initial-scale=1">
<title>Home - Test code</title>
<script>
var text = "";
if (navigator.userAgent.match(/Android/i) || navigator.userAgent.match(/webOS/i) || navigator.userAgent.match(/iPhone/i) || navigator.userAgent.match(/iPod/i)) {
text = "'mobile.css'";
} else {
text = "'screen.css'";
}
document.getElementById('insertStyle').href=text
</script>
<link id="insertStyle" rel="stylesheet" href="null">
</head>
Currenlyコードはまったく動作せず、スタイルシートのhrefを "null"として残します。私のコードをどのようにパッチすることができるかについての指針は、非常に高く評価されます。
なぜあなたは 'と'も持っていますか?そのうちの1つを削除してみてください – Miguel
* "メディアのサイズや形状によってモバイルブラウザーを検出したくありません。 *これはあなたの選択ですが、これに 'userAgent'を使うのは一般的にアンチパターンとみなされます。 –
私はそれがhtmlにする必要があると思っていました。 – Panopticon36