Метатег Viewport для настольных браузеров?

мой клиент просит меня уменьшить размер текущего веб-сайта для настольных браузерах на 30%.

есть ли css или мета-тег, чтобы сделать это как viewport meta tag в мобильном браузере?

5 ответов


вы можете посмотреть на CSS screen тип носителей.

- Это:

предназначено главным образом для экранов компьютера цвета.

вы можете использовать это так:

@media screen {
  body { font-size: 70% }
}

также handheld тип носителя, в первую очередь:

предназначен для портативных устройств (обычно небольшой экран, ограниченная пропускная способность).

однако вам нужно будет протестировать различные устройства и настольные компьютеры ваш клиент фокусируется на том, чтобы определить, как использование этих типов носителей повлияет на пользовательский интерфейс.


Хммм... Я знаю, что это старый вопрос, но есть гораздо лучший способ сделать это: использовать CSS scale() функция преобразования на <html> тег, чтобы масштабировать все внутри. Проверьте этот jsFiddle:http://jsfiddle.net/mike_marcacci/6fMnH/

магия все здесь:

html {
    transform: scale(.5);
    -webkit-transform: scale(.5);
    -moz-transform: scale(.5);
    -ms-transform: scale(.5);
    -o-transform: scale(.5);
    width: 200%;
    height: 200%;
    margin: -50% -50%;
}

ОД прав.

@media screen {
  body { font-size: 70% }
}

но чтобы это действительно хорошо работало, вы должны использовать ems вместо px везде. Это касается полей и отступов, а также ширины и высоты всех элементов.

хороший способ сделать это-использовать SASS. Просто создайте свою собственную функцию sass, чтобы конвертировать ваши измерения px в ems на лету. Что-то вроде этого будет делать:

@function em($px, $context: 16, $basesize: 16) {
  @return (($px/$basesize)/($context/16))+em;
}

который затем используется в вашем CSS так:

div { font-size:em(12); width: em(200,12); }

Итак, если шрифт тела размер был установлен на 100%, тогда размер шрифта будет эквивалентен 12px, а ширина div будет 200px в ширину.


здесь код для пропорционального масштаба и позиционирования, wnen с использованием "transform: scale"

в CSS

html,body
{
    width: 100%;
    height: 100%;
    margin:0;
    padding:0;    
}
html
{
    position:absolute;
}

JS

var scale = 1;
$('html').css('transform','scale('+scale+')');

var windowWidth = $(window).width();
$('body').append(windowWidth);
$('body').append(' ' + windowWidth*scale );
//$('html').width(windowWidth*scale);


var width = (100*(1/scale));
var left = -(width*(1-scale))/2;

var height = (100*(1/scale));
var top = -(height*(1-scale))/2;

$('html').css('top', top+'%');
$('html').css('left', left+'%');
$('html').width(width+'%');
$('html').height(height+'%');

вы можете включить тег meta viewport на рабочем столе с помощью JS. Сначала вы должны получить настройку (ширину) из мета-тега:

var viewportcontent = $( "#myviewport" ).attr('content');
var viewportcontents = viewportcontent.split(",");
//if it starts with 'width='
for (var i = 0; i < viewportcontents.length; i++) {
  if(viewportcontents[i].lastIndexOf('width=', 0) === 0) {
    var wspec = viewportcontents[i].substring(6);
  }
}

тогда вам нужно немного JS и решение Майка, чтобы получить это рабочее решение:http://codepen.io/anon/pen/GqoeYJ. Обратите внимание, что этот пример заставляет ширину быть 1200 пикселей, но initial-scale: 0.7 может быть реализовано таким же образом.