Я пытаюсь установить различные видовые экраны для разных устройств Android. для этого я использую этот кусок кода.
<head>
<meta name="viewport" content="width=device-width; initial-scale=0.91; maximum-scale=0.91; user-scalable=0;target-densityDpi=device-dpi" />
<script>
if (window.devicePixelRatio == 1)
{
document.querySelector("meta[name=viewport]").setAttribute('content', 'width=device-width, initial-scale=0.51, maximum-scale=0.51, user-scalable=0,target-densityDpi=device-dpi');
} else if (window.devicePixelRatio == 2) {
document.querySelector("meta[name=viewport]").setAttribute('content', 'width=device-width, initial-scale=0.51, maximum-scale=0.51, user-scalable=0');
} else if (window.devicePixelRatio == .78) {
document.querySelector("meta[name=viewport]").setAttribute('content', 'width=device-width, initial-scale=0.51, maximum-scale=0.51, user-scalable=0, target-densityDpi=device-dpi');
} else if (window.devicePixelRatio == 1.5) {
document.querySelector("meta[name=viewport]").setAttribute('content', 'width=device-width, initial-scale=0.51, maximum-scale=0.51, user-scalable=0, target-densityDpi=device-dpi');
}
</script>
</head>
Теперь проблема заключается в том, что он не устанавливает соответствующие значения содержимого. и в Logcat, дающем эту ошибку
body { background - repeat : no - repeat ; margin : 0 ; ,
Значение аргумента Viewport «ширина устройства»; для ключевой «ширина» не распознается. Содержимое игнорируется.
Аргумент аргумента Viewport ", начальная шкала" не распознается и игнорируется.
Значение аргумента Viewport "no;" для ключевого «пользовательского масштабируемого» не распознается. Содержимое игнорируется.
Ключ аргумента Viewport «device-dpi» не распознается и игнорируется.
Какие-либо предложения. Извините за плохое редактирование, я не могу его отредактировать.
РЕДАКТИРОВАТЬ:
При этом мой Viewport все еще не работает на устройствах Android. Я хочу, чтобы я использовал только один css, и tat css должен масштабировать изображения в соответствии с устройством.
Для этого я использовал Viewport с целевым уровнем яркости и дал первый и максимальный масштаб в первый раз, когда он работал, но теперь, когда я запускаю этот подход на android, он игнорирует Viewport.
На самом деле проблема в том, что когда я устанавливаю изображение в фоновом режиме в html и запускаю это приложение на любом устройстве Android, он дает изображение в настройке увеличения. Для этого я изменяю свой html-файл и файл app.java и отключаю настройку масштабирования, а также использую целевую плотность, но все методы не работают. Вот html-код:
Вот css-файл:
background-image: url('../images/abc_title.png');
width: 1280px;
height: 670px;
}
div {ширина: 1280px; высота: 670px; }
Главная {
position: relative; background : transparent;
width: 129px;
height: 76px;
background: transparent; width : 129px; height : 76px;
margin-top: 80px;
margin-left: 80px;
border: thin;
}
abc_slide {
position: relative;
background: transparent;
margin-top: 80px;
margin-left: 80px; width : 129px;
height: 76px;
width: 129px;
border: thin;
}
song_slide {
<script>
var viewportContent = '';
if (window.devicePixelRatio = 1) {
viewportContent = 'width=device-width, initial-scale=0.51, maximum-scale=0.51, user-scalable=0, target-densityDpi=device-dpi';
} else if (window.devicePixelRatio == 2) {
viewportContent = 'width=device-width, initial-scale=0.51, maximum-scale=0.51, user-scalable=0';
} else if (window.devicePixelRatio == .78) {
viewportContent = 'width=device-width, initial-scale=0.51, maximum-scale=0.51, user-scalable=0, target-densityDpi=device-dpi';
} else if (window.devicePixelRatio == 1.5) {
viewportContent = 'width=device-width, initial-scale=0.51, maximum-scale=0.51, user-scalable=0, target-densityDpi=device-dpi';
}
$('head').append('<meta name="viewport" content="' + viewportContent + '">');
</script>
}
Это из-за зрения дроида или кордовера