Browser 桌面浏览器的视口元标记?
我的客户要求我将当前桌面浏览器网站的大小减少30%Browser 桌面浏览器的视口元标记?,browser,viewport,Browser,Viewport,我的客户要求我将当前桌面浏览器网站的大小减少30% 是否有css或meta标记可以像移动浏览器上的viewport meta标记那样执行此操作?您可以查看css屏幕 它是: 主要用于彩色计算机屏幕 您可以这样使用它: @media screen { body { font-size: 70% } } 还有一种手持媒体类型,主要包括: 适用于手持设备(通常为小屏幕、有限带宽) 但是,您需要测试客户关注的不同设备和台式机,以确定使用这些媒体类型将如何影响用户体验。Hmmm。。。我知道这是一个老
是否有css或meta标记可以像移动浏览器上的viewport meta标记那样执行此操作?您可以查看css
屏幕
它是:
主要用于彩色计算机屏幕
您可以这样使用它:
@media screen {
body { font-size: 70% }
}
还有一种手持
媒体类型,主要包括:
适用于手持设备(通常为小屏幕、有限带宽)
但是,您需要测试客户关注的不同设备和台式机,以确定使用这些媒体类型将如何影响用户体验。Hmmm。。。我知道这是一个老问题,但有一个更好的方法:使用
标记上的CSSscale()
transform函数来缩放内部的所有内容。查看这个JSFIDLE:
魔术就在这里:
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
JS
您可以使用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);
}
}
var viewportcontent=$(“#myviewport”).attr('content');
var viewportcontents=viewportcontent.split(“,”);
//如果它以“width=”开头
对于(var i=0;i
然后,您需要一点JS和Mike的解决方案来获得此工作解决方案:。请注意,此示例强制宽度为1200像素,但初始比例:0.7
可以以相同的方式实现。感谢您的输入。在chrome、ie和firefox上试用过。他们都没有工作。我把你的css放到我的css文件中。我还需要做点别的吗?@Moon-我刚刚放了一个关于如何使用它的插图。您仍然需要添加适当的样式。您正在查找zoom
CSS属性。这里介绍,。您可以使用这个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+'%');
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);
}
}