当前位置: 首页 > news >正文

假网站如何做开发网站的流程

假网站如何做,开发网站的流程,如何测试网站的跨浏览器兼容性,成都网站建设吧一、目前市场上适配方案有两种; vw、vh方案: 原理:按照设计稿的尺寸,将px按比例计算转为vw和vh; 优点:不会存在失真情况、可以动态计算图表的宽高,字体等,灵活性较高,…

一、目前市场上适配方案有两种;

  • vw、vh方案:

原理:按照设计稿的尺寸,将px按比例计算转为vw和vh;

优点:不会存在失真情况、可以动态计算图表的宽高,字体等,灵活性较高,当屏幕比例跟 ui 稿不一致时,不会出现两边留白情况;

缺点:类似第三方echart图表都需要单独做字体、间距、位移的适配,比较麻烦

核心代码以sass为例

/*util.scss*/
@use 'sass:math';
//默认设计稿的宽度
$designWidth: 1920;
//默认设计稿的高度
$designHeight: 1080;//px转为vw的函数
@function vw($px) {@return math.div($px, $designWidth) * 100vw;
}//px转为vh的函数
@function vh($px) {@return math.div($px, $designHeight) * 100vh;
}

然后页面中引入util.scss、将20px更换为vh(20)

@import '@/assets/style/util.scss';.dateText {padding-top: vh(20);}.weatherText {padding-top: vh(32);}

在js中使用到尺寸可以用下面这个工具方法去做转换

const styleUtil = {// px转vwpx2vw: function (_px, unit) {if (unit) {return (_px * 100.0) / designWidth + unit;}return (_px * 100.0) / designWidth + 'vw';},// px转vhpx2vh: function (_px, unit) {if (unit) {return (_px * 100.0) / designHeight + unit;}return (_px * 100.0) / designHeight + 'vh';},
};

chart 图表中的适配用以下方法、需要注意的是、在resize的时候、让echart也resize一下

const fitChartSize = (size, defaultHeight = 1080) => {// 默认宽高问设计let clientHeight = window.innerHeight || document.documentElement.clientHeight || document.body.clientHeight;console.log('clientHeight::: ', clientHeight);if (!clientHeight) return size;let scale = clientHeight / defaultHeight;return Number((size * scale).toFixed(3));
};
  • 缩放方案

原理:按照设计稿的尺寸布局,采用等比例缩放、在不同屏幕尺寸中将其通过放大缩小最外层的dom为一定比例、来保持原本布局;

优点:代码量少,适配简单 、一次处理后不需要在各个图表中再去单独适配;

缺点:如果缩放比例超过一定程度,字体图片等就会失真、会留白


核心代码

  const usePreviewFitScale = (width, height, scaleDom, callback) => {// * 画布尺寸(px)const baseWidth = width;const baseHeight = height;// * 默认缩放值const scale = {width: 1,height: 1,};// * 需保持的比例const baseProportion = parseFloat((baseWidth / baseHeight).toFixed(5));const calcRate = () => {// 当前屏幕宽高比const currentRate = parseFloat((window.innerWidth / window.innerHeight).toFixed(5));if (scaleDom) {if (currentRate > baseProportion) {// 表示更宽 以高度为基准 需要保持比例的宽scale.width = parseFloat(((window.innerHeight * baseProportion) / baseWidth).toFixed(5));scale.height = parseFloat((window.innerHeight / baseHeight).toFixed(5));const offsetW = ((window.innerWidth - window.innerHeight * baseProportion) / 2).toFixed(5);scaleDom.style.transform = `translateX(${offsetW}px) scale(${scale.width}, ${scale.height})`;} else {// 表示更高 以宽度为基准 需要保持比例的高scale.width = parseFloat((window.innerWidth / baseWidth).toFixed(5));scale.height = parseFloat((window.innerWidth / baseProportion / baseHeight).toFixed(5));scaleDom.style.transform = `translateX(0px) scale(${scale.width}, ${scale.height})`;}if (callback) callback(scale);}};const resize = throttle(() => {calcRate();}, 200);// * 改变窗口大小重新绘制const windowResize = () => {window.addEventListener('resize', resize);};// * 卸载监听const unWindowResize = () => {window.removeEventListener('resize', resize);};return {calcRate,windowResize,unWindowResize,};
};
  • 至于还有流传rem + vw vh的方案(我是直接舍弃的)

这个rem的方案是根据单个宽度来计算的,只能适配宽度缩放、而大屏是一屏展示、而且在类似echart图表中,还需要做vw vh的单独适配、也是直接舍弃

  • 有的同学还说有设计外层盒子百分比、盒子内部图表大小固定;

这种方式怎么说呢,那就得UI配合给我们设计出对应的样式、而且这种不用动脑子想也是很丑啊、还是直接pass吧、大屏本身就是要做的好看

二、我们先搞清楚可视化大屏适配与传统后台管理系统适配的区别

三、当然不管采用那种方式我们都要一客户需求基点、然后分析出对应的解决方式

1、 嵌入管理系统内部展示: 多数情况以非全屏展示

这种情况如果使用缩放形式、其实也可以、那得需要UI出图为实际空间占比的UI、否则当我们写完代码,因为底部程序坞和浏览器窗口操作栏的高度,导致缩放比大、就会凸显失真情况的产生,而且有留白

一般情况UI给的图就是1920*1080的尺寸比、当然如果客户要求不高、采用这种方式当然是最省事;

但如果客户要求高、还是老老实实的使用vw、vh

2、纯全屏显示:多数情况给定尺寸为大屏尺寸、全屏展示、不考虑程序坞、浏览器上方操作栏;

这种场景呢,就比较适合缩放、因为一般适配屏幕大小不会差太多、没有很多情况、即使失真、多数也在客户考虑范围之内;

因为vw vh方式,如果是正常布局的vw、vh和echart 高度比计算得出来的尺寸位置,可能会存在对不齐的情况、当然具体情况具体分析;

http://www.ds6.com.cn/news/116313.html

相关文章:

  • 天津市建行网站网站seo排名优化价格
  • wordpress批量增加用户权限郑州seo代理商
  • 不用iis建立网站哪个公司的网站制作
  • 响应式网站搭建百度小程序seo的方法有哪些
  • 网站建设课后心得统计站老站长推荐草莓
  • 门户网站建设工作会议在seo优化中
  • 专门帮做ppt的网站吗最新seo操作
  • 电子商务网站建设需要学什么软件注册自己的网站
  • 北京建站公司seo点击工具
  • 地方网站域名用全拼东莞营销网站建设
  • 浦江县做网站网站开发流程
  • 百度指数移动版seo学途论坛网
  • 电子政务门户网站建设教训qq推广网站
  • 虚拟币网站开发制作网络营销的理解
  • 网站设计公司石家庄品牌软文范文
  • 网片生产厂家网站怎么优化推广
  • wordpress面板seo团队
  • 网站推广必做最好的优化公司
  • 医院网站建设报价郑州网站seo服务
  • 正邦设计公司简介百度网站排名优化软件
  • 江门有什么网站推广刚刚传来最新消息
  • 社交网站只做推广项目的平台
  • jsp网站建设期末作业自助建站系统哪个好
  • 幼儿园微网站建设栏目网站优化排名金苹果系统
  • 高级web程序设计——jsp网站开发pdfseo关键词排行优化教程
  • 二级域名网站建设太原百度seo排名软件
  • 品牌建设论文百度seo最成功的优化
  • 云南华琴网络科技有限公司网站为什么要做seo
  • 贵州省建设厅网站首页百度搜索广告怎么投放
  • 自己如何建立网站东莞网络营销网站建设