2023年6月21日发(作者:)
前端常见的适配⽅法作为⼀个真正的前端攻城狮,我们经常会谈到web前端怎么做适配,然⽽平常经常做的事,⼀旦问起来突然好像脑⼦⼀⽚空⽩,只能想到rem、flex、媒体查询那些,因此想记录⼀篇⽂章以此警醒⾃⼰。⼀、固定布局(pc端)(静态布局)以像素作为页⾯的基本单位,不管设备和浏览器宽度,只设计⼀套尺⼨(这种不太现实)⼆、根据不同根据不同的分辨率,加载不同的CSS样式⽂件(可切换的固定布局)⾃适应布局这⾥要特别注意:注意这⾥的js⼀定要写在
标签⾥⾯,这样在加载页⾯内容之前,可以提前把css样式表加载出来三、媒体查询媒体查询可以让我们根据设备显⽰器的特性(如视⼝宽度、屏幕⽐例、设备⽅向:横向或纵向)为其设定CSS样式,媒体查询由媒体类型和⼀个或多个检测媒体特性的条件表达式组成。link元素中的CSS媒体查询css3必须设置viewport:视⼝width=device-width:就将布局视⼝设置成了理想的视⼝。initial-scale:[0,10] 初始缩放⽐例,1表⽰不缩放maximum-scale:[0,10] 最⼩缩放⽐例maximum-scale: [0,10] 最⼤缩放⽐例user-scalable: yes/no 是否允许⼿动缩放页⾯,默认值为yes语法:/*⼤屏幕 */@media only screen and (min-width:1200px) { 对应的样式}/*
中等屏幕 */@media only screen and (min-width: 992px)and (max-width: 1199px) { 对应的样式}/*
⼩屏幕 */页⾯⼤于 768px, ⼩于 991px 时显⽰的样式效果@media only screen and (min-width: 768px)and (max-width: 991px) { 对应的样式}/*
⼿机端显⽰ */屏幕⼩于 767px 时的样式@media only screen and (max-width: 767px) { 对应的样式}四、rem布局(弹性布局)移动端1、媒体查询结合rem布局媒体查询动态修改根元素的⼤⼩,使得rem ⼀直在跟着变化,响应式就成功了。实现详情1.下载放到项⽬⽬录⾥去│ │├─css│ │ │├─images└─js 2.引⼊
给我们划分了 10
等份,所以应该是10rem */ width: 10rem; margin: 0 auto; line-height: 1.5; font-family: Arial, Helvetica; background: #f2f2f2;}3.完美的响应式布局vw+vh+rem屏幕适配⽅案1、vw、vh是基于视⼝的布局⽅案,故这个meta元素的视⼝必须声明。(解决宽⾼⾃动适配) 2、rem布局-解决字体适配rem布局原理:根据CSS的媒体查询功能,更改html根字体⼤⼩,实现字体⼤⼩随屏幕尺⼨变化。@media only screen and (max-width: 1600px) and (min-width: 1280px){ html{ font-size: 14px; } } @media only screen and (max-width: 1280px) and (min-width: 960px){ html{ font-size: 12px; } } @media only screen and (max-width: 960px){ html{ font-size: 10px; } }3、vw、vh、rem的使⽤
这⾥表⽰如果⽂件⼩于10个字节,就不⽤压缩,因为没有意义,本来就很⼩ gzip_buffers 4 16k; #设置压缩缓冲区⼤⼩,此处设置为4个16K内存作为压缩结果流缓存 gzip_http_version 1.1; #压缩版本 gzip_comp_level 6; #设置压缩⽐率,最⼩为1,处理速度快,传输速度慢;9为最⼤压缩⽐,处理速度慢,传输速度快;
这⾥表⽰压缩级别,可以是0到9中的任⼀个,级别越⾼,压缩就越⼩,节省了带宽资源,但同时也消耗CPU资源,所以⼀般折中为6 gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php application/javascript application/json; #制定压缩的类型,线上配置时尽可能配置多的压缩类型! gzip_disable "MSIE [1-6].";#配置禁⽤gzip条件,⽀持正则。此处表⽰ie6及以下不启⽤gzip(因为ie低版本不⽀持) gzip_vary on; #选择⽀持vary header;改选项可以让前端的缓存服务器缓存经过gzip压缩的页⾯;
这个可以不写,表⽰在传送数据时,给客户端说明我使⽤了gzip压缩
}4.使⽤SSR服务端优化
2023年6月21日发(作者:)
前端常见的适配⽅法作为⼀个真正的前端攻城狮,我们经常会谈到web前端怎么做适配,然⽽平常经常做的事,⼀旦问起来突然好像脑⼦⼀⽚空⽩,只能想到rem、flex、媒体查询那些,因此想记录⼀篇⽂章以此警醒⾃⼰。⼀、固定布局(pc端)(静态布局)以像素作为页⾯的基本单位,不管设备和浏览器宽度,只设计⼀套尺⼨(这种不太现实)⼆、根据不同根据不同的分辨率,加载不同的CSS样式⽂件(可切换的固定布局)⾃适应布局这⾥要特别注意:注意这⾥的js⼀定要写在
标签⾥⾯,这样在加载页⾯内容之前,可以提前把css样式表加载出来三、媒体查询媒体查询可以让我们根据设备显⽰器的特性(如视⼝宽度、屏幕⽐例、设备⽅向:横向或纵向)为其设定CSS样式,媒体查询由媒体类型和⼀个或多个检测媒体特性的条件表达式组成。link元素中的CSS媒体查询css3必须设置viewport:视⼝width=device-width:就将布局视⼝设置成了理想的视⼝。initial-scale:[0,10] 初始缩放⽐例,1表⽰不缩放maximum-scale:[0,10] 最⼩缩放⽐例maximum-scale: [0,10] 最⼤缩放⽐例user-scalable: yes/no 是否允许⼿动缩放页⾯,默认值为yes语法:/*⼤屏幕 */@media only screen and (min-width:1200px) { 对应的样式}/*
中等屏幕 */@media only screen and (min-width: 992px)and (max-width: 1199px) { 对应的样式}/*
⼩屏幕 */页⾯⼤于 768px, ⼩于 991px 时显⽰的样式效果@media only screen and (min-width: 768px)and (max-width: 991px) { 对应的样式}/*
⼿机端显⽰ */屏幕⼩于 767px 时的样式@media only screen and (max-width: 767px) { 对应的样式}四、rem布局(弹性布局)移动端1、媒体查询结合rem布局媒体查询动态修改根元素的⼤⼩,使得rem ⼀直在跟着变化,响应式就成功了。实现详情1.下载放到项⽬⽬录⾥去│ │├─css│ │ │├─images└─js 2.引⼊
给我们划分了 10
等份,所以应该是10rem */ width: 10rem; margin: 0 auto; line-height: 1.5; font-family: Arial, Helvetica; background: #f2f2f2;}3.完美的响应式布局vw+vh+rem屏幕适配⽅案1、vw、vh是基于视⼝的布局⽅案,故这个meta元素的视⼝必须声明。(解决宽⾼⾃动适配) 2、rem布局-解决字体适配rem布局原理:根据CSS的媒体查询功能,更改html根字体⼤⼩,实现字体⼤⼩随屏幕尺⼨变化。@media only screen and (max-width: 1600px) and (min-width: 1280px){ html{ font-size: 14px; } } @media only screen and (max-width: 1280px) and (min-width: 960px){ html{ font-size: 12px; } } @media only screen and (max-width: 960px){ html{ font-size: 10px; } }3、vw、vh、rem的使⽤
这⾥表⽰如果⽂件⼩于10个字节,就不⽤压缩,因为没有意义,本来就很⼩ gzip_buffers 4 16k; #设置压缩缓冲区⼤⼩,此处设置为4个16K内存作为压缩结果流缓存 gzip_http_version 1.1; #压缩版本 gzip_comp_level 6; #设置压缩⽐率,最⼩为1,处理速度快,传输速度慢;9为最⼤压缩⽐,处理速度慢,传输速度快;
这⾥表⽰压缩级别,可以是0到9中的任⼀个,级别越⾼,压缩就越⼩,节省了带宽资源,但同时也消耗CPU资源,所以⼀般折中为6 gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php application/javascript application/json; #制定压缩的类型,线上配置时尽可能配置多的压缩类型! gzip_disable "MSIE [1-6].";#配置禁⽤gzip条件,⽀持正则。此处表⽰ie6及以下不启⽤gzip(因为ie低版本不⽀持) gzip_vary on; #选择⽀持vary header;改选项可以让前端的缓存服务器缓存经过gzip压缩的页⾯;
这个可以不写,表⽰在传送数据时,给客户端说明我使⽤了gzip压缩
}4.使⽤SSR服务端优化
发布评论