それは働いています!あなたが使用しているあなたのページで:
<meta content="width=640, initial-scale=0.47, maximum-scale=1.0, user-scalable=1" name="viewport">
携帯電話 (ios7 iphone5) でページを開くと、まさに正しい結果が表示されます。
コードに次のコードを入れようとしたことを 100% 確信していますか?
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=no">
無視されません。
更新1
あなたのコードでは、2 番目のビューポートを使用しているように見えますが、おそらく JavaScript によって 640px ビューポートに変更されます。それが、無視されているように感じる理由かもしれません。実行時にビューポートが変更されるため...
更新2
問題が見つかりました。
function updateWidth(){
viewport = document.querySelector("meta[name=viewport]");
if (window.orientation == 90 || window.orientation == -90) {
viewport.setAttribute('content', 'width=1401, initial-scale=0.34, maximum-scale=1.0, user-scalable=1');
}
else {
viewport.setAttribute('content', 'width=640, initial-scale=0.47, maximum-scale=1.0, user-scalable=1');
}
}
あなたのページは、ビューポートをオーバーライドするこの関数を呼び出しています。その機能を知っていましたか?