link和@import的区别,性能优化

link和@import的区别

两者都是外部引用CSS的方式,它们的区别如下:

link是XHTML标签,除了加载CSS外,还可以定义RSS等其他事务;@import属于CSS范畴,只能加载CSS。

link引用CSS时,在页面载入时同时加载;@import需要页面网页完全载入以后加载。

link是XHTML标签,无兼容问题;@import是在CSS2.1提出的,低版本的浏览器不支持。

link支持使用Javascript控制DOM去改变样式;而@import不支持。

transition和animation的区别

transition是过度属性,强调过度,它的实现需要触发一个事件(比如鼠标移动上去,焦点,点击等)才执行动画。它类似于flash的补间动画,设置一个开始关键帧,一个结束关键帧。

animation是动画属性,它的实现不需要触发事件,设定好时间之后可以自己执行,且可以循环一个动画。它也类似于flash的补间动画,但是它可以设置多个关键帧(用@keyframe定义)完成动画。

为什么有时候⽤translate来改变位置⽽不是定位?

translate 是 transform 属性的⼀个值。改变transform或opacity不会触发浏览器重新布局(reflow)或重绘(repaint),只会触发复合(compositions)。⽽改变绝对定位会触发重新布局,进⽽触发重绘和复合。transform使浏览器为元素创建⼀个 GPU 图层,但改变绝对定位会使⽤到 CPU。 因此translate()更⾼效,可以缩短平滑动画的绘制时间。 ⽽translate改变位置时,元素依然会占据其原始空间,绝对定位就不会发⽣这种情况。

(1)css压缩:将写好的css进行打包压缩,可以减小文件体积。

(2)css单一样式:当需要下边距和左边距的时候,很多时候会选择使用 margin:top 0 bottom 0;但margin-bottom:bottom;margin-left:left;执行效率会更高。

(3)减少使用@import,建议使用link,因为后者在页面加载时一起加载,前者是等待页面加载完成之后再进行加载。

css雪碧图,同一页面相近部分的小图标,方便使用,减少页面的请求次数,但是同时图片本身会变大,使用时,优劣考虑清楚,再使用。

字体样式可以font-family如果需要手动添加字体类型,在条件允许的情况下,压缩字体文件只挑取需要显示的文字

单行、多行文本溢出隐藏

单行文本溢出

css复制代码overflow: hidden; // 溢出隐藏

text-overflow: ellipsis; // 溢出用省略号显示

white-space: nowrap; // 规定段落中的文本不进行换行

多行文本溢出

css复制代码overflow: hidden; // 溢出隐藏

text-overflow: ellipsis; // 溢出用省略号显示

display:-webkit-box; // 作为弹性伸缩盒子模型显示。

-webkit-box-orient:vertical; // 设置伸缩盒子的子元素排列方式:从上到下垂直排列

-webkit-line-clamp:3; // 显示的行数

注意:由于上面的三个属性都是 CSS3 的属性,没有浏览器可以兼容,所以要在前面加一个-webkit- 来兼容一部分浏览器。】

  1. HTTP和HTTPS协议的区别
    HTTP和HTTPS协议的主要区别如下:

HTTPS协议需要CA证书,费用较高;而HTTP协议不需要;

HTTP协议是超文本传输协议,信息是明文传输的,HTTPS则是具有安全性的SSL加密传输协议;

使用不同的连接方式,端口也不同,HTTP协议端口是80,HTTPS协议端口是443;

HTTP协议连接很简单,是无状态的;HTTPS协议是有SSL和HTTP协议构建的可进行加密传输、身份认证的网络协议,比HTTP更加安全。

相关推荐
NoneCoder17 小时前
CSS系列(26)-- 动画性能优化详解
前端·css·性能优化
苏三说技术21 小时前
Redis 性能优化的18招
数据库·redis·性能优化
程序猿会指北1 天前
【鸿蒙(HarmonyOS)性能优化指南】内存分析器Allocation Profiler
性能优化·移动开发·harmonyos·openharmony·arkui·组件化·鸿蒙开发
程序猿会指北1 天前
【鸿蒙(HarmonyOS)性能优化指南】启动分析工具Launch Profiler
c++·性能优化·harmonyos·openharmony·arkui·启动优化·鸿蒙开发
彭亚川Allen2 天前
优化了2年的性能,没想到最后被数据库连接池坑了一把
数据库·后端·性能优化
MClink2 天前
Go怎么做性能优化工具篇之pprof
开发语言·性能优化·golang
京东零售技术2 天前
Taro小程序开发性能优化实践
性能优化·taro
理想不理想v2 天前
wepack如何进行性能优化
性能优化
fantasy_arch2 天前
CPU性能优化-磁盘空间和解析时间
网络·性能优化
码农老起3 天前
企业如何通过TDSQL实现高效数据库迁移与性能优化
数据库·性能优化