css屏幕适配问题

html-css020

css屏幕适配问题,第1张

    @media screen and (device-aspect-ratio:1366/1024){

        body{

            background: #000

        }

    }

width:浏览器可视宽度。

height:浏览器可视高度。

device-width:设备屏幕的宽度。

device-height:设备屏幕的高度。

orientation:检测设备目前处于横向还是纵向状态。

aspect-ratio:检测浏览器可视宽度和高度的比例。(例如:aspect-ratio:16/9)

device-aspect-ratio:检测设备的宽度和高度的比例。

color:检测颜色的位数。(例如:min-color:32就会检测设备是否拥有32位颜色)

color-index:检查设备颜色索引表中的颜色,他的值不能是负数。

monochrome:检测单色桢缓冲区域中的每个像素的位数。(这个太高级,估计咱很少会用的到)

resolution:检测屏幕或打印机的分辨率。(例如:min-resolution:300dpi或min-resolution:118dpcm)。

grid:检测输出的设备是网格的还是位图设备

貌似,@media是不能适应两个属性,只能是一个,

或者写成这样:

@media screen and (max-device-width: 1366px){

@media screen and (max-device-height:1024px){

body{background:#00}

}

}

代表性的就是阿里的flexible方案

其实是相对于,html根元素的 font-size 属性,rem等比例放大字体;其中设备宽度改变的话,取设备宽的百分之10,作为根元素的字体大小。达到不同尺寸设备自适应的效果

弊端: 通常情况下,用户使用大屏的目的:是希望能看到更多内容,而不仅仅只是放大内容

使用的时候,一般是需要借助编译工具,将 px 转化换算成为 vh 、 vw ( postcss-px-to-viewport )

也可能会遇到不能整除的情况

就像他们所说的那样,你要是想做成自动适应显示器的网页就用百分比做,例如:

.banner{width:100%height:100px}

.logo{width:20%height:100pxfloat:left}

.admin{width:80%height:100pxflaot:right}

<div class="banner">

<div class="logo"></div>

<div class="admin"></div>

</div>

这样的情况下这个头部就会自己按照显示器的分辨率来调节自己的宽度了,里边的div元素也会相应改变,达到“自适应宽度”

如果不要做成自适宽度的,那就用固定宽度的盒子模型

例如:

body{text-align:center}

.banner{width:950pxheight:100px}

.logo{width:250pxheight:100pxfloat:left}

.admin{width:700pxheight:100pxflaot:right}

<div class="banner">

<div class="logo"></div>

<div class="admin"></div>

</div>

这样就行了!O(∩_∩)O哈哈~

加油哦,你比我当年强多了,还知道在百度上问,我当年傻呵呵的什么都不知道,遇到问题就只能卡住了!呵呵!