css样式自适应分辨率

html-css014

css样式自适应分辨率,第1张

高度和宽度尽量使用百分百,像素px换成em、rem这种,网页会根据大小来自适应,要想使用效果好,就需要根据不同分辨率来设置层的高宽、字体大小,设置几套样式来应用

@media screen and (min-width:640px) {

/*屏幕大于640像素应用该样式*/

}

@media screen and (min-width:460px) and (max-width:640px) {

/*屏幕小于640大于460像素应用该样式*/

}

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

/*屏幕小于460像素应用该样式*/

}

1.目前台式电脑与笔记本适配测试数据以下为参考数值:

台式机和笔记本电脑的分辨率:2560x1440 1920x1200 1680x1050 1600x1200 1440x900 1366x768 1280x1024 1280x800 1280x768 1152x864 1024x768 800x600

平板电脑分辨率:iPad( 768x1024 )iPad Pro(1024x1366)Nexus 10(800x1280) Nexus 7(600x960)---显示都是不完整的

智能手机分辨率:Nexus 5(360x598) Nexus 5x(412x684) iPhone 6 Plus(414x736) iPhone 6(375x667) iPhone 5(320x568) iPhone 4(320x480)------显示都是不完整的

2.突然出现滚动条禁止屏幕抖动:

body {

padding-right: calc(100vw - 100%)

}

3.更改(美化)滚动条样式:

//滚动条整体部分

::-webkit-scrollbar {

width: 6px

height: 6px

background-color: transparent

}

//滚动条轨道部分

::-webkit-scrollbar-track {

background-color: transparent

}

//滚动条滑块部分

::-webkit-scrollbar-thumb {

border-radius: 3px

background-image: linear-gradient(135deg, #09f, #3c9)

}

4.自动识别文本换行

7.页面暗黑模式:

html{

filter: invert(1) hue-rotate(180deg)

}

8.页面悼念(全灰)模式:

html{

filter: grayscale(1)

}

9.两端文本对齐

text-align-last:justify

10.禁用效果

pointer-events:none

11.aspect-ratio维持图片长宽比

aspect-ratio:1/1

12.clamp() 实现页面的响应式

clamp() 的工作原理是“夹紧”或限制一个灵活的值,使其处于最小和最大范围之间

img {

width: clamp(15vw, 800%, 100%)

}

h1 {

font-size: clamp(20px, 5vw, 35px)

}

响应式web设计

两种方式,一种是直接在link中判断设备的尺寸,然后引用不同的css文件:

<link rel="stylesheet" type="text/css" href="styleA.css" media="screen and (min-width: 400px)">

意思是当屏幕的宽度大于等于400px的时候,应用styleA.css

<link rel="stylesheet" type="text/css" href="styleB.css" media="screen and (min-width: 600px) and (max-width: 800px)">

意思是当屏幕的宽度大于600小于800时,应用styleB.css

另一种方式,即是直接写在<style>标签里:

@media screen and (max-width: 600px) { /*当屏幕尺寸小于600px时,应用下面的CSS样式*/

.class {

background: #ccc

}

}

写法是前面加@media,其它跟link里的media属性相同

其实基本上就是样式覆盖~,判断设备,然后引用不同的样式文件覆盖。

要注意的是由于网页会根据屏幕宽度调整布局,所以不能使用绝对宽度的布局,也不能使用具有绝对宽度的元素。这一条非常重要,否则会出现横向滚动条。