
使用以下的方法去获取获取应用的屏幕高度
此处通过 getMetrics() 获取的高度其实是去除了虚拟按键后的高度。所以和手机的实际屏幕高度可能有差异
getReaMetrics() 则是真正原始的屏幕尺寸
导入 import 'dart:ui';
1获取 windowplatformBrightness 的值 如果是 Brightnesslight 代表是正常模式, 如果是Brightnessdark代表是暗黑模式
2获取屏幕宽高
final double screenWidth = windowphysicalSizewidth/windowdevicePixelRatio;
final double screenHeight = windowphysicalSizeheight/windowdevicePixelRatio;
本篇主要介绍Web环境中屏幕、浏览器及页面的高度、宽度信息。
1介绍:介绍页面的容器(屏幕、浏览器及页面)、物理尺寸与分辨率、展示等内容。
2屏幕信息:介绍屏幕尺寸信息;如:屏幕、软件可用以及任务栏的高度和宽度。
3浏览器信息:介绍浏览器尺寸信息;如:浏览器、内部页面以及工具栏的高度和宽度。
4页面信息:介绍HTML页面尺寸信息;如:body总的、展示的高度和宽度。
一个页面的展示,从外到内的容器为:屏幕、浏览器以及页面本身。
HTML元素展现在页面内,页面展现在浏览器内,而浏览器展现在屏幕内。
通过Js的一些对象可以获取这些容器的高度、宽度。
容器的尺寸是指当前分辨率下的高度、宽度,而不是物理高度、宽度。
如:一个22寸的显示器,屏幕分辨率为1366 768,那么获取到的屏幕高度为1366px,宽度为768px。
screenheight : 屏幕高度。
screenwidth : 屏幕宽度。
screenavailHeight : 屏幕可用高度。即屏幕高度减去上下任务栏后的高度,可表示为软件最大化时的高度。
screenavailWidth : 屏幕可用宽度。即屏幕宽度减去左右任务栏后的宽度,可表示为软件最大化时的宽度。
任务栏高/宽度 : 可通过屏幕高/宽度 减去 屏幕可用高/宽度得出。如:任务栏高度 = screenheight - screenavailHeight 。
windowouterHeight : 浏览器高度。
windowouterWidth : 浏览器宽度。
windowinnerHeight : 浏览器内页面可用高度;此高度包含了水平滚动条的高度(若存在)。可表示为浏览器当前高度去除浏览器边框、工具条后的高度。
windowinnerWidth : 浏览器内页面可用宽度;此宽度包含了垂直滚动条的宽度(若存在)。可表示为浏览器当前宽度去除浏览器边框后的宽度。
工具栏高/宽度 : 包含了地址栏、书签栏、浏览器边框等范围。如:高度,可通过浏览器高度 - 页面可用高度得出,即:windowouterHeight - windowinnerHeight。
bodyoffsetHeight : body总高度。
bodyoffsetWidth : body总宽度。
bodyclientHeight : body展示的高度;表示body在浏览器内显示的区域高度。
bodyclientWidth : body展示的宽度;表示body在浏览器内显示的区域宽度。
滚动条高度/宽度 : 如高度,可通过浏览器内页面可用高度 - body展示高度得出,即windowinnerHeight - bodyclientHeight。
先抄一下网上对vh和vw的解释:
vh and vw:相对于视口的高度和宽度,而不是父元素的(CSS百分比是相对于包含它的最近的父元素的高度和宽度)。1vh 等于1/100的视口高度,1vw 等于1/100的视口宽度。
比如:浏览器高度950px,宽度为1920px, 1 vh = 950px/100 = 95 px,1vw = 1920px/100 =192 px。
开发准备:
1 首先确认大屏尺寸,比如:3000x1500;
2 确认尺寸之后就可以在全局css文件globelscss中,设置两个变量:$w和$h
$w: 100/3000
$h: 100/1500
3 需要引用该变量的css文件中引入全局css文件;
@import "@common/css/globelscss";
4 要给某div设置宽度和高度
根据设计图效果,比如设计图上该div宽高:300x200
5 设置如下样式:
width:$w300vw;
height:$h200vh;
6 其他所有样式均以此类推;可适应不同分辨率大小的屏幕。
问题一:js 中怎么获取当前屏幕的宽度 documentdocumentElementclientWidth 这个方法返回页面在当前窗口中可见部分的宽度(不包括滚动条宽度);
windowinnerWidth 这个方法返回页面在当前窗口中可见部分宽度(包括滚动条宽度);
windowouterWidth 返回浏览器窗口自身宽度,包括菜单和边框;
screenwidth 返回设备的(屏幕宽度)
问题二:js网页如何获取手机屏幕宽度 ]@]@]
@sssss
var x = navigator;
var w=windowinnerWidth
|| documentdocumentElementclientWidth
|| documentbodyclientWidth;
var h=windowinnerHeight
|| documentdocumentElementclientHeight
|| documentbodyclientHeight;
documentgetElementById(p1)innerHTML=屏幕分辨率:+screenwidth + + screenheight+内部窗口: + w + + h
不知道是不是这个 屏幕分辨率 :pc上的桌面分辨率 。手机上是 一个型号固定的分辨率比如
华为8813的分辨率是480854。。 内部窗口是 改变窗口大小刷新一下就有新的数据
问题三:用javascript 怎样才能很好的获取手机的屏幕宽度和高度 一般来说在移动浏览器上是拿不到屏幕真实分辨率的,因为页面渲染是在一个叫viewport的页面绘制区域内(说的通俗点就是手机浏览器是用一个虚拟的屏幕来显示网页的)。viewport和屏幕的真实尺寸并不是对应的,如在Safari Mobile中viewport默认宽度(320px)是屏幕真实尺寸(640px)的一半,这里不管是用windowinnerHeight还是windowscreenwidth拿到的都是320px。当然我们可以通过meta设置改变viewport的比例,如initial-scale=5就可以让viewport和屏幕一致的尺寸,但这个比例在不同的手机上并不一定是2倍关系,特别是Android手机,在大屏手机(5寸以上)上这个值是3倍甚至4倍。而且改变viewport比例后可能会导致后续制作中出现一系列问题。所以我认为不要纠结一定要拿到屏幕真实尺寸,就把viewport的尺寸当成屏幕的尺寸进行页面设计和制作肯定是没有问题的。
有一个非常曲线的解决办法,就是:css的媒体查询(@media)是能够检测屏幕尺寸(其实是浏览器窗体的真实尺寸,并不是屏幕的真实物理尺寸,介意的朋友就不要看了)的,通过它来给网页内的某个元素设置一个特殊的属性,然后再用JavaScript来获取这个属性值。当然这样只能获得一个阶梯值(比如480px到540px之间、540px到600px之间等等),不是精确值,所以可能得不偿失,因此我是不推荐的。
问题四:如何获得当前屏幕的高度 windowonload = function(){ 获取屏幕高度 documentdocumentElementclientHeightconsolelog(documentdocumentElementclientHeight); 获取屏幕宽度 documentdocumentElementclientWidthconsolelog(documentdocumentElementclientWidth);}
问题五:html中 如何获取屏幕宽度 把以下这段代码放到之间或之间预览即可看到数据
/将获取的值存到变量里/
width_screen=screenwidth;
height_screen=screenheight;
availWidth_screen=screenavailWidth;
availHeight_screen=screenavailHeight;
colorDepth_screen=screencolorDepth;
/end/
/输出值/
documentwrite(你的屏幕宽为:+width_screen+
你的屏幕高为:+height_screen+
你的屏幕可用宽为:+availWidth_screen+
你的屏幕可用高为:+availHeight_screen+
你的颜色设置所有为数为:+colorDepth_screen);
/end/
问题六:怎么用jquery来获取屏幕的宽度和高速 $(window)width();$(window)height();严格来说,获取window才对
问题七:javascript怎么获取屏幕大小 1
2
3
4
5
6
7
8
9
windowonload = function(){
获取屏幕高度 documentdocumentElementclientHeight
consolelog(documentdocumentElementclientHeight);
获取屏幕宽度 documentdocumentElementclientWidth
consolelog(documentdocumentElementclientWidth);
}
问题八:PHP怎么获取屏幕的宽度与高度? 10分 PHP是无法获取屏幕的高度和宽度的,你可以用JS来获取
Javascript:
网页可见区域宽: documentbodyclientWidth网页可见区域高: documentbodyclientHeight网页可见区域宽: documentbodyoffsetWidth (包括边线的宽)网页可见区域高: documentbodyoffsetHeight (包括边线的高)网页正文全文宽: documentbodyscrollWidth网页正文全文高: documentbodyscrollHeight网页被卷去的高: documentbodyscrollTop网页被卷去的左: documentbodyscrollLeft网页正文部分上: windowscreenTop网页正文部分左: windowscreenLeft屏幕分辨率的高: windowscreenheight屏幕分辨率的宽: windowscreenwidth屏幕可用工作区高度: windowscreenavailHeight屏幕可用工作区宽度: windowscreenavailWidth
JQuery:
$(document)ready(function(){alert($(window)height()); 浏览器当前窗口可视区域高度alert($(document)height()); 浏览器当前窗口文档的高度alert($(documentbody)height());浏览器当前窗口文档body的高度alert($(documentbody)outerHeight(true));浏览器当前窗口文档body的总高度 包括border padding marginalert($(window)width()); 浏览器当前窗口可视区域宽度alert($(document)width());浏览器当前窗口文档对象宽度alert($(documentbody)width());浏览器当前窗口文档body的宽度alert($(documentbody)outerWidth(true));浏览器当前窗口文档body的总宽度 包括border padding margin})
问题九:怎样用 JavaScript 准确获取手机屏幕的宽度和高度 屏幕分辨率的高:windowscreenheight
屏幕分辨率的宽:windowscreenwidth
网页可见区域宽:documentbodyoffsetWidth
网页可见区域高:documentbodyoffsetHeight
问题十:Android开发 怎样获取屏幕的宽高是多少厘米 我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现。下面就介绍讲一讲如何获取屏幕的物理尺寸
下面的代码即可获取屏幕的尺寸。
在一个Activity的onCreate方法中,写入如下代码:
[java] view plain copy print
DisplayMetrics metric = new DisplayMetrics();
getWindowManager()getDefaultDisplay()getMetrics(metric);
int width = metricwidthPixels; 屏幕宽度(像素)
int height = metricheightPixels; 屏幕高度(像素)
float density = metricdensity; 屏幕密度(075 / 10 / 15)
int densityDpi = metricdensityDpi; 屏幕密度DPI(120 / 160 / 240)
DisplayMetrics metric = new DisplayMetrics();
getWindowManager()getDefaultDisplay()getMetrics(metric);
int width = metricwidthPixels; 屏幕宽度(像素)
int height = metricheightPixels; 屏幕高度(像素)
float density = metricdensity; 屏幕密度(075 / 10 / 15)
int densityDpi = metricdensityDpi; 屏幕密度DPI(120 / 160 / 240)
但是,需要注意的是,在一个低密度的小屏手机上,仅靠上面的代码是不能获取正确的尺寸的。比如说,一部240x320像素的低密度手机,如果运行上述代码,获取到的屏幕尺寸是320x427。因此,研究之后发现,若没有设定多分辨率支持的话,Android系统会将240x320的低密度(120)尺寸转换为中等密度(160)对应的尺寸,这样的话就大大影响了程序的编码。所以,需要在工程的AndroidManifestxml文件中,加入supports-screens节点,具体的内容如下:
[html] view plain copy print
>
最后这两句只是 获取屏幕 的坐标x2 和 y2 数值,
Scrx = PluginSysGetScRX //得到当前屏幕宽度
Scry = PluginSysGetScRY //得到当前屏幕高度
因为全屏找图的x1 和 y1 刚好都等于 0
其实很简单的,
TracePrint 找图(0, 0, Scrx, Scry, 路径, , 09)
您把 0 , 0, 换成你所谓的区域开始位置坐标 x1 y1 ,
Scrx 和 Scry 的数值换为 你需要的终止位置坐标 x2 和 y2就行了
比如换成下面这样:
TracePrint 找图(20, 20, 200, 200, 路径, , 09)
需要4个数值,包括起点坐标x1 y1 两个 和 终点的 x2 y2 两个懂了吗?
你用这个软件内置功能应该能找到鼠标坐标数值。
1、首先创建或者打开我们的web项目,新建一个html文件和css文件即可,如图所示。
2、html页面代码如图所示,定义一个div,然后给一个id属性即可。
3、这里是使用宽度的百分比之后,设置高度值为零,然后使用padding属性的top或者bottom的值(可以是任意百分比),背景颜色作为测试。
4、然后在浏览器运行之后的效果是这样的哦,放大缩小浏览器,宽高会随之改变。
5、这个方法是使用expression来设置高度即可。
CSS搞定不了,设定百分比是不能兼容所有浏览器的,所有高度不要使用%
你试着调用后台脚本吧,通过后台获取屏幕或者浏览器高度,然后给标签赋值
因为公司项目需要赋值的情况很多,这方面的事情都是交给程序员做的,我们做设计的一般不考虑怎么获取的
以上就是关于Android 获取手机屏幕高度 getMetrics和getRealMetrics的区别全部的内容,包括:Android 获取手机屏幕高度 getMetrics和getRealMetrics的区别、Flutter 获取是否是暗黑模式,屏幕宽度,屏幕高度、HTML 获取屏幕、浏览器、页面的高度宽度等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)