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更加安全。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/3377.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

url解析与拼接工具UrlUtils

import java.io.UnsupportedEncodingException; import java.util.HashMap; import java.util.Map;/*** 功能描述:url解析与拼接*/ public class UrlUtils {/*** 在给定的url后面拼接查询参数* param baseUrl url地址* param params 要拼接的查询参数map* return 拼接上params查…

SpringBoot整合knife4j

knife4j 文档地址:https://doc.xiaominfo.com/ knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案。 Swagger介绍 前后端分离开发模式中,api文档是最好的沟通方式。 Swagger 是一个规范和完整的框架,用于生成、描述、调用和…

实用在线工具网站分享

一、bejson网站: 1.功能 1)json工具 2)编码/解码、加密/解密 3)格式化工具 4)网络相关工具 5)前后端工具 6)正则生成等其他 7)文档处理 8)图片处理 9)文字处…

Docker中Mysql数据备份

Docker中Mysql数据备份 1.创建备份用户2.准备测试数据3.完全备份4.知识点解析 1.创建备份用户 百度过程中,有人说用最高权限root直接备份,不可取不安全,所以单独创建一个用于备份的用户 学习–去看–Mysql 备份所需要的权限 1.进入Mysql容器…

6.Hive系列之DML数据操作(二)

语句和Mysql、PgSQL都类似,简单过一遍 # 全表查询 select * from studen; # 列查询 select name, age from student; # 列别名 select name AS name1, age age1 from student; # 常用函数 count max min sum avg等 select avg(score) avg_score from student; # 限…

修复漏洞(一)离线升级Docker版本

前言 一般人最好用的修复漏洞的方式就是更新版本起因是使用的Docker版本被检测出来有一堆漏洞(例如:Docker 操作系统命令注入漏洞(CVE-2019-5736))更新环境无法联网,只能通过下载二进制文件的形式进行安装 步骤 可先通过which …

基于单片机的智能窗帘智能晾衣架系统的设计与实现

功能介绍 以STM32单片机单片机作为主控系统;OLED液晶显示当前环境温湿度,光照强度,时间,开关状态等信息;雨滴传感器检测当前环境是否下雨,天气下雨检测,天气潮湿时自动收衣服;可以通…

RabbitMq(一)

一、基本概念、常见工作模式以及简单使用 MQ全称Message Queue (消息队列),是在消息的传输过程中保存消息的容器。多用于分布式系统之间进行通信。 小结 MQ消息队列,存储消息的中间件分布式系统通信两种方式:直接远程调用和借助第三方完成间接通信发…

openGauss学习笔记-09 openGauss 简单数据管理-创建数据库

文章目录 openGauss学习笔记-09 openGauss 简单数据管理-创建数据库9.1 语法格式9.2 参数说明9.3 示例 openGauss学习笔记-09 openGauss 简单数据管理-创建数据库 数据库安装完成后,默认生成名称为postgres的数据库。您需要自己创建一个新的数据库。 9.1 语法格式…

低代码技术:提高效率降低成本的全新选择

一、前言 企业想要独立的应用程序,开发者在寻求更快速、更高效、更灵活的开发方法,以适应快速变化的市场需求。在这个背景下,低代码技术以提高效率降低成本的方式走进人们视野,成为了一种全新的应用程序开发方式。 二、相比传统的…

金融中的数学:概率分布(下)

上篇博客介绍了离散型概率分布,本篇博客介绍连续型概率分布。 1.连续型概率分布 连续型均匀分布(Continuous Uniform distribution)是一种描述在特定区间内取值均匀分布的概率分布。在该分布中,随机变量在给定区间内的取值概率密…

上门服务小程序|上门家政小程序开发

随着现代生活节奏的加快和人们对便利性的追求,上门家政服务逐渐成为了许多家庭的首选。然而,传统的家政服务存在着信息不透明、服务质量不稳定等问题,给用户带来了困扰。为了解决这些问题,上门家政小程序应运而生。上门家政小程序…

Jupyter入门使用教程

1 Jupyter Notebook与Jupyter Lab简介 Jupyter Notebook是一个开源的Web应用,在深度学习领域非常活跃。用户可以在这里创建和分享可执行代码、可视化结构和注释说明的文档。 Jupyter Notebook以网页的形式展现,用户可以在此网页中直接编辑代码、运行程…

通过 Lucene.Net 支持的 .NET 索引和搜索引擎的高效使用与探索:Examine 的简单索引与搜索数据应用以及其可扩展性分析

通过 Lucene.Net 支持的 .NET 索引和搜索引擎的高效使用与探索:Examine 的简单索引与搜索数据应用以及其可扩展性分析 在当前的技术环境中,搜索和索引数据变得越来越重要,尤其是在处理大量数据时。这就使得我们需要一种能够快速、精确、高效…

程序员如何制作PPT?

有道无术,术尚可求也;有术无道,止于术。大家好,我是程序员雪球,今天让我们一起探讨如何从零开始制作高质量的 PPT。 上周,领导要求我撰写一份关于 4到6月持续集成运营分析的报告,并通过 PPT 的形…

STM32单片机示例:多个定时器同步触发启动

文章目录 前言基础说明关键配置与代码其它补充示例链接 前言 多个定时器同步触发启动是一种比较实用的功能,这里将对此做个示例说明。 基础说明 该示例演示通过一个TIM使能时同步触发使能另一个TIM。 本例中使用TIM1作为主机,使用TIM1的使能信号作为…

win10 vscode 打包springboot项目

1 查看 java -version 2 环境变量配置 JAVA_HOME where java # D:\JDK\bin\java.exe1 在"系统变量"部分,点击"新建(N)"按钮。 2 在"变量名"字段中输入 JAVA_HOME 3 在"变量值"字段中输入 JDK 的安装路径。例如&#xff0…

基于 Linux 的轻量级多线程 HTTP 服务

使用基本的Linux系统调用来创建一个TCP socket&#xff0c;监听端口8080&#xff0c;并在接受到客户端连接时创建一个新的线程来处理连接。每个连接处理函数都是一个独立的线程&#xff0c;读取客户端请求并发送固定的HTTP响应。 代码&#xff1a; #include <iostream> …

简笔风和写实风的区别

现实主义和风格化 当我们谈论现实主义和风格化时&#xff0c;我们是什么意思&#xff1f;这看起来相当明显&#xff0c;现实主义指的是模仿逼真的逼真的图形。它不一定需要存在于现实世界中&#xff0c;但被传达为它属于我们的世界。10年前&#xff0c;我们认为现实的东西在今…

尝试-InsCode Stable Diffusion 美图活动一期

一、 Stable Diffusion 模型在线使用地址&#xff1a; https://inscode.csdn.net/inscode/Stable-Diffusion 二、模型相关版本和参数配置&#xff1a; 活动地址 三、图片生成提示词与反向提示词&#xff1a; 提示词&#xff1a;realistic portrait painting of a japanese…