【转】刨根究底CSS(1):开篇
01 一道小菜
CSS很难,这应该是绝大多数Web开发人员的共识。
什么?你并不觉得很难?那我就先上一道小菜,请君品尝。
这是个乍一看,让人觉得很诡异的案例……
算了,本来想滔滔不绝介绍一番,但一想到Linux之父Linus大神所说的“Talk is cheap, show me the code.”,那我还是“废话少说,放码过来”吧,各位接招。
HTML部分:
<p>ABC XYZ</p>
<div><span>abc xyz</span>
</div>
<p>ABC XYZ</p>
CSS部分:
p {width: 200px; margin: 0; background: silver;
}
div {width: 200px;line-height: 0;font-size: 50px;background: gold;
}
span {font-size: 0;
}
这个案例的“诡异”之处在于,当子元素span的font-size属性值为0,因而其高度也为0时,竟然撑开了父元素div的高度。如下面的图所示。
而当子元素span的font-size属性值不为0,因而其高度也不为0时,比如删除子元素的font-size属性,这种情况下span元素的font-size属性值默认继承自父元素div,为50px,其他则完全不变,反而没有撑开父元素div的高度。如下面的图所示。
这也太反常,太违反直觉了吧?难道是浏览器有bug?
但在主流浏览器中,Chrome、FireFox、Edge、Opera都一样,甚至连IE8都一样,貌似就Safari不同(考虑到Safari已经沦落为了新一代的IE,这倒也不奇怪)。
好,坑先挖到这里,各位慢慢爬坑,期待各位的爬坑报告。
02 CSS难在哪里
很多前端初学者,通常一开始对CSS都很不以为然,以为看看w3school,顶多再读一两本专著(比如《CSS权威指南》、《精通CSS》之类的),就一定不在话下了。
但是,刚开始这样想的人,逐渐地一定会被惨淡的事实教育得重新做人,最终身心备受打击,严重的甚至于开始怀疑人生[流汗]
先一起来观摩一下知乎里的这些问题:
CSS真有这么难?
我觉得主要原因在于,重视不足,说白了就是一开始太小看CSS了。
也确实,说CSS是一种计算机语言都非常勉强,不就是对HTML元素设置一些样式属性嘛。
然而,CSS表面的看似简单,掩盖了由于历史原因所造成的问题:属性之间互相影响的情况非常严重;这用软件工程的术语来说,就是属性之间耦合得非常严重,这是CSS复杂性的根源。
所谓“历史原因”,主要应该是由于预估不足、发展太快所导致的。
一开始想得比较简单,不就相当于将报纸杂志搬到网络上吗?无非是多了可以跳转的链接,本质上还是图文排版啊。
但随着互联网的迅猛发展,Web页面所承载的内容越来越复杂,其功能要求也越来越丰富,仅仅图文排版是搞不定了,于是在原来的基础上加各种功能。
结果就是,CSS属性不断增长膨胀,而为了保持向下兼容,却又只能在原来的基础上修修补补,没办法推倒重来。
这就好比一个小孩的衣服,随着小孩身体的不断疯长,功能要求也越来越高,既要保暖,又要护体,还要审美,但却又不能扔掉重做,只能在原来的基础上不断地修改,不断地一层层打补丁......
想想这个难度,想想这件衣服结果会怎样?
因此,实践中,当你时不时被属性之间鬼畜般的相互影响搞得茫然无措、筋疲力尽时,如果能想到这一层,就能多一分理解,多一分冷静。
03 磨刀不误砍柴工
当然,光有理解和冷静,是无法解决问题的。
但在这些宝贵的理解和冷静的基础上,“磨刀不误砍柴工”,花点时间,深入了解CSS的底层原理、运作机制和历史沿革,你一定会不断地发出“啊,原来是这样”的感慨。
之后,不敢说从此就一定顺风顺水、一马平川了,但至少会自信很多,会多了一种像是庖丁解牛般尽在掌握的掌控感,进而给你带来“提刀而立,为之四顾,为之踌躇满志”的极大满足感。
事实上,正因为很多人对CSS太过于轻视,学习又不得法,导致所谓“易学难精”的CSS,可以说是成了优秀Web开发人员少有的护城河,因为同等的CSS经验很难通过同等的编程经验、工程经验来换取。
也就是说,就算你写了多年的代码,就算你熟练掌握了多门语言,在CSS面前,都得重新刷新自己的认知。
但如果你一旦掌握了CSS的规律和精髓,无疑将脱颖而出、鹤立鸡群、茫然四顾、独孤求败……好吧,这有点自我膨胀了[捂脸]
因此,CSS值得你花时间。
而且,跟着我的思路,我们一起来刨根究底,相信你可以少走很多弯路,少花很多时间。
04 内容说明
这里需要说明一点,本“刨根究底CSS”系列文章,不是针对完全没有CSS经验的人而写的。
因此,在看本系列文章之前,至少得对CSS的基本概念和基础语法有所了解,最好是还刷过一遍w3school中的入门课程。
而如果你是在实践中积累了不少困惑,遇到了瓶颈,被CSS虐了千百遍的Web开发人员,那就最适合不过了。
也因此,本“刨根究底CSS”系列文章,不会按照惯常的写法,逐个对CSS属性进行介绍,因为这些直接到W3C官网和MDN上查看就可以了,用不着我再复制粘贴一遍。
当然,毕竟是讲解CSS的文章,如果完全脱离对CSS属性的介绍,这文章也就没法写了。
只不过,对关键CSS属性的介绍,将穿插在对CSS底层原理和运作机制的说明之中,而不是单纯地简单罗列出来。
总体而言,就是一方面站在浏览器的角度,尽量将浏览器通过CSS属性将一个又一个的框框最终绘制出来的过程梳理一遍;另一方面是站在Web开发人员的角度,尽量从实践中的棘手问题入手,看看到底该怎么来理解问题,又该怎样来解决问题。
具体来说,站在浏览器的角度,Web网页本质上就是由元素框套着元素框构成的,因此如果要从CSS的底层原理和运行机制层面刨根究底地彻底说透,则必须从视觉格式化模型的角度入手,将以下几方面的内容讲清楚:
1)元素框分类:即元素框主要分为哪几类,各有什么区别,重点内容包括块级框、行内级框、匿名框以及其他各种特殊框等。
2)元素框模型:即元素框主要由哪几个部分构成,重点内容包括内容框、补白框、边界框、边距框与box-sizing属性等。
3)元素框定位:即元素框是如何确定位置的,重点内容将包括视口(布局视口、设备视口、理想视口)、包含块,以及常规流定位、浮动定位、绝对定位等。
4)元素框大小:即元素框的大小是怎样计算的,重点内容包括宽度、高度、边距计算,行高计算,以及垂直对齐(尤其是垂直居中对齐,相信这是很多人的噩梦)、字体与字体度量(这个要彻底讲清楚,要死很多脑细胞,但一旦弄懂了,就会有种打通了任督二脉的感觉)等。
注:垂直对齐、字体与字体度量看似与元素框大小的计算无关,但实际上这是严重的误解,这应该是CSS最难的部分,也是让Web开发者最为抓狂的部分。
5)元素框关系:即元素框相互之间的关系(一般也称之为布局关系)是怎么处理的,重点内容包括元素框与其祖先框、后代框以及同级兄弟框之间的关系处理,其中关键在于理解边距折叠、层叠上下文、格式化上下文FC以及各种格式化上下文与其所在的包含块之间的关系。
注:格式化上下文FC,包括块格式化上下文BFC、行内格式化上下文IFC、表格格式化上下文TFC、弹性格式化上下文FFC、网格格式化上下文GFC等。
这样一梳理,就可以发现,只要紧紧抓住元素框的生成与绘制这条主线,就能高屋建瓴、纲举目张,将以往觉得零零碎碎、杂七杂八、不成体系的各种CSS属性和奇技淫巧贯通起来,从而理解起来圆融无碍、如环无端。
当然,若只是站在浏览器的角度,将底层原理和运行机制理解得通透彻底,虽然可以获得大局观,理解也更为体系化,但这也还是不足够的。
还应站在Web开发人员的角度,从解决实践中的棘手问题入手,从而使用起来得心应手、顺手拈来。这就必须从CSS工程化的角度入手,将以下几方面的内容讲清楚:
1)层叠规则;
2)选择器及其权重计算与优先规则;
3)命名空间;
4)模块化;
5)预处理与后处理;
6)媒体类型与媒体查询;
7)度量单位与值;
8)伪元素与伪类;
9)变量与函数;
10)文本排版;
11)布局设计(浮动布局、流式布局、弹性布局、网格布局、响应式布局等);
12)针对Retina显示屏的特殊适配;
13)书写规范;
14)CSS Lint;
15)性能优化。
以上两个角度方面的内容,显然是不可能绝对分开的。因此,这两方面的内容将会互相穿插来讲。
不过,前期会主要从浏览器角度来讲解,同时穿插少部分涉及从Web开发者角度来讲解的内容;后期会主要从Web开发者角度来讲解,同时穿插少部分涉及从浏览器角度来讲解的内容。
05 CSS级别
由于前面说了这么多,已经占了不少篇幅,接下来暂时不说其他内容,先简单说一下CSS级别。
记得有一次,有个同事问我:“JavaScript有ES5、ES6、ES7、ES8等不断升级的版本,CSS为什么只有CSS2、CSS3,却没再听说有CSS4、CSS5等升级版本呢?”
这确实是个有意思的问题。CSS在对待版本的问题上,很有些“特立独行”。
事实上,CSS目前不使用传统意义上的版本来进行区分,而是使用级别来进行区分。
每一级别CSS都建立在前一级别的基础上,改进了定义并添加了特性。每个较高级别的特性集是任何较低级别的超集,并且较高级别的特性集所允许的行为是较低级别所允许的行为的子集。
因此,符合较高级别的CSS的用户代理也符合所有较低级别的CSS。
05.01 CSS级别1(CSS Level 1)
由于CSS 1规范已被W3C的CSS工作组(CSS Working Group)认定为已过时,因此,CSS级别1被确定为:CSS 1规范中所定义的所有特性(包括属性、值、at-Rule等),但这些特性的语法和规则等则以CSS 2.1规范中的为准。
注:CSS1规范在早期相当于是CSS 1.0版,CSS 2、CSS 2.1与之类似,在早期相当于是CSS 2.0版和CSS2.1版。随着CSS引入级别的概念之后,级别可以是跨规范的,并且逐渐淡化并最终弃用了版本的概念。
另外,sytle属性规范定义了特定元素的style属性中的CSS样式所应遵循的规范。
注:
所谓style属性,即元素的style属性,其中所书写的CSS样式,被称为行内样式(inline style),也称为行间样式,比如:<p style="color: red; font-size: 20px;...">...</p>,p元素的sytle属性中所定义的“color:red; font-size: 20px; ...”样式,就是这里所说的style属性样式。
style属性规范主要规定了style属性中的CSS样式与常规的CSS样式在一致性上的要求,以及在层叠计算时的优先规则等等。
05.02 CSS级别2(CSS Level 2)
虽然从技术上讲,CSS 2规范是W3C推荐标准,但它在W3C定义其为候选推荐阶段之前,就已经进入了推荐阶段。
注:
候选推荐阶段为推荐阶段的前一个阶段。
注意,W3C组织作为一个国际性的互联网技术协作组织,只有标准的推荐建议权,并没有标准的强制执行权,所以即便是该组织所制定的正式规范也只是称之为推荐标准,不过目前几乎所有主流浏览器都基本上遵循了这些推荐标准。
之前微软的IE浏览器有很多就没有遵循W3C标准,而是自搞一套,后来IE也就因此而被逐渐边缘化了,所以最后连微软自己都只好放弃了IE,而重新开发了遵循W3C标准的Edge浏览器。
现在苹果的Safari浏览器又有步IE浏览器后尘的趋势,被很多Web开发者戏称为“新一代的IE”。
随着时间的推移、实践检验和进一步审查,暴露了CSS 2规范中的许多问题,因此CSS工作组没有继续扩展已经很庞大的勘误表,而是选择了定义CSS Level 2 Revision 1(CSS 2.1)。如果CSS 2与CSS 2.1这两个规范之间有任何冲突,应以CSS 2.1为准。
一旦CSS 2.1成为候选推荐标准,即便不是处于和CSS 2相同的正式稳定阶段(CSS 2已经是推荐标准),但实际上就有效取代了CSS 2推荐标准。CSS 2中的功能如果在CSS 2.1中被删除了,则应视为处于“候选推荐”阶段。
但请注意,其中许多功能已经或将被纳入CSS级别3工作草案中。如果CSS级别3达到候选推荐阶段,那么CSS 2中的定义就过时了。
CSS 2.1规范定义了CSS级别2,而style属性规范则定义了特定元素的style属性中的样式所应遵循的规范。
05.03 CSS级别3(CSS Level 3)
CSS级别3是在CSS级别2之上,一个模块一个模块地单独构建的,使用CSS 2.1规范作为其核心。每个模块添加功能和/或替换部分CSS 2.1规范。
CSS工作组希望新的CSS模块只是添加功能并改进定义,而不会与CSS 2.1规范相冲突。当每个模块完成后,它将插入到现有的CSS 2.1系统以及之前已完成的模块中。
从这个级别开始,模块被独立地分级别定义。例如,选择器级别4(Selectors Level 4)很可能在CSS行模块级别3(CSS Line Module Level 3)之前完成。
CSS级别2中不存在的模块(即没有等效项的模块),从级别1开始;CSS级别2中已存在的模块,其更新从级别3开始。
05.04 CSS级别4及以上级别(CSS Level 4 and beyond)
没有CSS级别4和以上级别。独立的模块可以单独地达到级别4或更高级别,但整体的CSS语言不再有级别4。因此称为CSS级别4或CSS 4都是不正确的。
实际上,“CSS级别3”作为一个术语,也仅用于将其与以前的“CSS级别1”和“CSS级别2”这样的单一整体级别区分开来,而并非真的存在这么一个CSS语言的单一整体级别。
(未完待续)
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 半路出家OCR后成领域专家,白翔:计算机视觉科研没有捷径
极市学者专访|第三期 “听大牛说说计算机视觉那些事儿” 本次极市学者访谈,我们非常荣幸地邀请到了华中科技大学白翔教授。白翔教授是计算机视觉领域的优秀学者,也是场景文字领域的知名大牛。在本次访谈中,白翔教授不仅分享了他对…...
2024/4/25 2:35:38 - 金融现金贷用户数据分析和用户画像
时值蚂蚁上市之际,马云在上海滩发表演讲。马云的核心逻辑其实只有一个,在全球数字经济时代,有且只有一种金融优势,那就是基于消费者大数据的纯信用! 我们不妨称之为数据信用,它比抵押更靠谱,它…...
2024/4/25 2:35:44 - 前端之模拟数据 - HackerVirus - 博客园
阅读目录 玩转前端之模拟数据 回到目录 玩转前端之模拟数据 博客园主页:http://www.cnblogs.com/handoing/ 是否还在为前端模拟数据头疼? 是否还在为后端返回数据格式较多内心烦躁? 是否还想吸一支烟压压精? 看下去吧&#x…...
2024/4/25 2:35:35 - [Vue.js] 模块化 -- 前端模块化
模块化相关规范 模块化概述 传统开发模式的主要问题 命名冲突文件依赖 通过模块化解决传统开发模式的问题 模块化就是把单独的一个功能封装到一个模块(文件)中,模块之间相互隔离,但是可以通过特定的接口公开内部成员,也可以依赖别的模块 好…...
2024/4/24 6:30:16 - 洛谷P2550 [AHOI2001]彩票摇奖
题目描述 为了丰富人民群众的生活、支持某些社会公益事业,北塔市设置了一项彩票。该彩票的规则是: 每张彩票上印有 7 个各不相同的号码,且这些号码的取值范围为 1∼33。每次在兑奖前都会公布一个由七个各不相同的号码构成的中奖号码。共设置…...
2024/4/25 2:35:33 - 【转】刨根究底字符编码之八——Unicode编码方案概述
Unicode编码方案概述 1. 前面讲过,随着计算机发展到世界各地,于是各个国家和地区各自为政,搞出了很多既兼容ASCII但互相之间又不兼容的各种编码方案(微软统一称之为ANSI编码,具体体现为各种ANSI代码页)。 这样一来,同…...
2024/4/25 2:35:38 - 别找了,这是迄今为止收集总结了全网最全的Java 架构面试”指南没有之一
2020,结尾猜不到,开头也没料到会这么难!复工难,各种延期!连跳槽涨薪计划都得跟着调整。一个明显的感受:开春全都是 “云上” 面试,到底怎么搞呢? 的确,面试形式的变化带…...
2024/4/25 3:05:43 - 学习笔记(76):Python数据分析与挖掘-饶过那些“生病”的数据吧(二)
立即学习:https://edu.csdn.net/course/play/6861/371100?utm_sourceblogtoedu 异常值的识别与处理: Z得分法 IQR75%-25% 分位数法 距离法 缺失值的识别与处理 df.isnull 单元格中的缺失值判断 df.isnull().any()一列内容有没有缺失 df.fillna 缺失值填充 …...
2024/4/25 3:05:42 - ZooKeeper管理员指南--基于3.6.2版本
ZooKeeper管理员指南--基于ZK 3.6.2前言部署系统要求支持的平台依赖软件集群搭建单服务器和开发搭建管理员设计一个ZK部署跨机器要求单机器要求维护使用中的数据目录清理日志清除(Log4j)监督(Supervision)监控(Monitoring)日志排查异常配置参数最小配置高级配置以下是服务降级的…...
2024/4/25 3:05:41 - 带UI的小初高数学学习软件——湖南大学结对编程总结
链接:完整代码及说明 提取码:87mx 复制这段内容后打开百度网盘手机App,操作更方便哦 一、功能需求 1、用户注册功能。用户提供手机号码,点击注册将收到一个注册码,用户可使用该注册码完成注册; 2、用户完…...
2024/4/25 3:05:44 - 薛永东
薛永东 教授,主任医师 清宫御医五代传人 京城四大名医汪逢春再传弟子 北京同仁堂中医特聘专家 北京理工大学医院专家 北京中医药研究院客座教授 北京中医疑难病研究会专家委员会主任委员 薛永东教授系八代中医世家,清宫御医五代传人,国家非物…...
2024/4/25 3:05:40 - python风控建模实战lendingClub
时值蚂蚁上市之际,马云在上海滩发表演讲。马云的核心逻辑其实只有一个,在全球数字经济时代,有且只有一种金融优势,那就是基于消费者大数据的纯信用! 我们不妨称之为数据信用,它比抵押更靠谱,它…...
2024/5/7 17:01:08 - 设计模式 3 —— 迭代器和组合模式(迭代器)
迭代器模式:提供一种方法顺序访问一个聚合对象中的元素,而不暴露其内部的结构。 组合模式:允许将对象组成树形结构来表现“整体/部分”的层次结构。组合能让客户以一致的方法处理对象的组合和个别对象。 概要 第1部分 问题引入 第2部分 迭…...
2024/5/7 16:38:00 - 达梦数据库——学习笔记 005
学习笔记 005 第18章 全文检索 看前思考: 全文检索什么?如何全文检索?有哪些管理方式? 个人总结: 全文检索技术目的就是实现对大容量的非结构化数据的快速查找。DM实现了全文检索功能,并将其作为DM 服…...
2024/4/25 3:05:36 - vue项目里面使用video.js视频播放插件
引入video.js文件 npm install -S video.js在main.js里面引入相关文件,并挂载在window对象上 import videojs from video.js; import "video.js/dist/video-js.min.css"; window.videojs videojs;在页面使用播放器 html <video id"example…...
2024/4/25 3:05:36 - vue中遇到的indexOf数组索引
数组索引,在数组中找字符串,如果找到,就是>-1,找不到就是-1 Array.indexOf(12345)>-1在vue中是否显示某个button的写法 <button v-if"buttonRight.indexOf(已审批) > -1"></button>...
2024/5/7 17:55:56 - 【YOLOv3】训练新数据集记录
参考代码:https://github.com/eriklindernoren/PyTorch-YOLOv3 1.训练时loss出现nan 原因: 默认学习率learning_rate0.001过大导致梯度爆炸,出现inf与nan值 解决办法: 在yolov3.cfg中降低学习率: 参考博客&#…...
2024/4/25 3:05:33 - springboot-application.properties官方文档地址
官方地址: https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/ 搜索Appendices,可以找到配置附录...
2024/5/7 14:46:16 - centos8 安装 SQL Server
Centos8 安装 SQL Server前言背景参考资料下载 Microsoft SQL Server 2019 Red Hat 存储库配置文件安装SQL Server运行 mssql-conf setup,按照提示设置 SA 密码并选择版本完成配置后,验证服务是否正在运行使用mssm测试连接,小企鹅出现前言 由…...
2024/4/25 2:35:47 - curses库安装
curses库是可以在linux终端中写出字符用户界面的一个库,现在较新的版本应该是ncurses库,现在已经很少有人再去使用他了,所以想拥有这个库并且在linux下写出自己用户界面的可以参考一下本博客,在网上搜了一下,所有的都是…...
2024/4/25 2:35:46
最新文章
- Amazon Q Business现已正式上市!利用生成式人工智能协助提高员工生产力
在 2023 年度 AWS re:Invent 大会上,我们预览了 Amazon Q Business,这是一款基于生成式人工智能的助手,可以根据企业系统中的数据和信息回答问题、提供摘要、生成内容额安全地完成任务。 借助 Amazon Q Business,您可以部署安全、…...
2024/5/7 18:19:27 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/5/7 10:36:02 - 3.java openCV4.x 入门-数据类型(CvType)与Scalar
专栏简介 💒个人主页 📰专栏目录 点击上方查看更多内容 📖心灵鸡汤📖我们唯一拥有的就是今天,唯一能把握的也是今天 🧭文章导航🧭 ⬆️ 2.hello openCV ⬇️ 4.待更新 数据类型ÿ…...
2024/5/3 23:42:20 - 力扣贪心算法--第一天
前言 今天是贪心算法的第一天,算法之路重新开始! 内容 之前没了解过贪心算法。 什么是贪心 贪心的本质是选择每一阶段的局部最优,从而达到全局最优。难点就是如何通过局部最优,推出整体最优。 一、455.分发饼干 假设你是一…...
2024/5/7 13:53:56 - 416. 分割等和子集问题(动态规划)
题目 题解 class Solution:def canPartition(self, nums: List[int]) -> bool:# badcaseif not nums:return True# 不能被2整除if sum(nums) % 2 ! 0:return False# 状态定义:dp[i][j]表示当背包容量为j,用前i个物品是否正好可以将背包填满ÿ…...
2024/5/6 18:23:10 - 【Java】ExcelWriter自适应宽度工具类(支持中文)
工具类 import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellType; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet;/*** Excel工具类** author xiaoming* date 2023/11/17 10:40*/ public class ExcelUti…...
2024/5/6 18:40:38 - Spring cloud负载均衡@LoadBalanced LoadBalancerClient
LoadBalance vs Ribbon 由于Spring cloud2020之后移除了Ribbon,直接使用Spring Cloud LoadBalancer作为客户端负载均衡组件,我们讨论Spring负载均衡以Spring Cloud2020之后版本为主,学习Spring Cloud LoadBalance,暂不讨论Ribbon…...
2024/5/6 23:37:19 - TSINGSEE青犀AI智能分析+视频监控工业园区周界安全防范方案
一、背景需求分析 在工业产业园、化工园或生产制造园区中,周界防范意义重大,对园区的安全起到重要的作用。常规的安防方式是采用人员巡查,人力投入成本大而且效率低。周界一旦被破坏或入侵,会影响园区人员和资产安全,…...
2024/5/7 14:19:30 - VB.net WebBrowser网页元素抓取分析方法
在用WebBrowser编程实现网页操作自动化时,常要分析网页Html,例如网页在加载数据时,常会显示“系统处理中,请稍候..”,我们需要在数据加载完成后才能继续下一步操作,如何抓取这个信息的网页html元素变化&…...
2024/5/7 0:32:52 - 【Objective-C】Objective-C汇总
方法定义 参考:https://www.yiibai.com/objective_c/objective_c_functions.html Objective-C编程语言中方法定义的一般形式如下 - (return_type) method_name:( argumentType1 )argumentName1 joiningArgument2:( argumentType2 )argumentName2 ... joiningArgu…...
2024/5/7 16:57:02 - 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】
👨💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】🌏题目描述🌏输入格…...
2024/5/7 14:58:59 - 【ES6.0】- 扩展运算符(...)
【ES6.0】- 扩展运算符... 文章目录 【ES6.0】- 扩展运算符...一、概述二、拷贝数组对象三、合并操作四、参数传递五、数组去重六、字符串转字符数组七、NodeList转数组八、解构变量九、打印日志十、总结 一、概述 **扩展运算符(...)**允许一个表达式在期望多个参数࿰…...
2024/5/7 1:54:46 - 摩根看好的前智能硬件头部品牌双11交易数据极度异常!——是模式创新还是饮鸩止渴?
文 | 螳螂观察 作者 | 李燃 双11狂欢已落下帷幕,各大品牌纷纷晒出优异的成绩单,摩根士丹利投资的智能硬件头部品牌凯迪仕也不例外。然而有爆料称,在自媒体平台发布霸榜各大榜单喜讯的凯迪仕智能锁,多个平台数据都表现出极度异常…...
2024/5/6 20:04:22 - Go语言常用命令详解(二)
文章目录 前言常用命令go bug示例参数说明 go doc示例参数说明 go env示例 go fix示例 go fmt示例 go generate示例 总结写在最后 前言 接着上一篇继续介绍Go语言的常用命令 常用命令 以下是一些常用的Go命令,这些命令可以帮助您在Go开发中进行编译、测试、运行和…...
2024/5/7 0:32:51 - 用欧拉路径判断图同构推出reverse合法性:1116T4
http://cplusoj.com/d/senior/p/SS231116D 假设我们要把 a a a 变成 b b b,我们在 a i a_i ai 和 a i 1 a_{i1} ai1 之间连边, b b b 同理,则 a a a 能变成 b b b 的充要条件是两图 A , B A,B A,B 同构。 必要性显然࿰…...
2024/5/7 16:05:05 - 【NGINX--1】基础知识
1、在 Debian/Ubuntu 上安装 NGINX 在 Debian 或 Ubuntu 机器上安装 NGINX 开源版。 更新已配置源的软件包信息,并安装一些有助于配置官方 NGINX 软件包仓库的软件包: apt-get update apt install -y curl gnupg2 ca-certificates lsb-release debian-…...
2024/5/7 16:04:58 - Hive默认分割符、存储格式与数据压缩
目录 1、Hive默认分割符2、Hive存储格式3、Hive数据压缩 1、Hive默认分割符 Hive创建表时指定的行受限(ROW FORMAT)配置标准HQL为: ... ROW FORMAT DELIMITED FIELDS TERMINATED BY \u0001 COLLECTION ITEMS TERMINATED BY , MAP KEYS TERMI…...
2024/5/6 19:38:16 - 【论文阅读】MAG:一种用于航天器遥测数据中有效异常检测的新方法
文章目录 摘要1 引言2 问题描述3 拟议框架4 所提出方法的细节A.数据预处理B.变量相关分析C.MAG模型D.异常分数 5 实验A.数据集和性能指标B.实验设置与平台C.结果和比较 6 结论 摘要 异常检测是保证航天器稳定性的关键。在航天器运行过程中,传感器和控制器产生大量周…...
2024/5/7 16:05:05 - --max-old-space-size=8192报错
vue项目运行时,如果经常运行慢,崩溃停止服务,报如下错误 FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 因为在 Node 中,通过JavaScript使用内存时只能使用部分内存(64位系统&…...
2024/5/7 0:32:49 - 基于深度学习的恶意软件检测
恶意软件是指恶意软件犯罪者用来感染个人计算机或整个组织的网络的软件。 它利用目标系统漏洞,例如可以被劫持的合法软件(例如浏览器或 Web 应用程序插件)中的错误。 恶意软件渗透可能会造成灾难性的后果,包括数据被盗、勒索或网…...
2024/5/6 21:25:34 - JS原型对象prototype
让我简单的为大家介绍一下原型对象prototype吧! 使用原型实现方法共享 1.构造函数通过原型分配的函数是所有对象所 共享的。 2.JavaScript 规定,每一个构造函数都有一个 prototype 属性,指向另一个对象,所以我们也称为原型对象…...
2024/5/7 11:08:22 - C++中只能有一个实例的单例类
C中只能有一个实例的单例类 前面讨论的 President 类很不错,但存在一个缺陷:无法禁止通过实例化多个对象来创建多名总统: President One, Two, Three; 由于复制构造函数是私有的,其中每个对象都是不可复制的,但您的目…...
2024/5/7 7:26:29 - python django 小程序图书借阅源码
开发工具: PyCharm,mysql5.7,微信开发者工具 技术说明: python django html 小程序 功能介绍: 用户端: 登录注册(含授权登录) 首页显示搜索图书,轮播图࿰…...
2024/5/7 0:32:47 - 电子学会C/C++编程等级考试2022年03月(一级)真题解析
C/C++等级考试(1~8级)全部真题・点这里 第1题:双精度浮点数的输入输出 输入一个双精度浮点数,保留8位小数,输出这个浮点数。 时间限制:1000 内存限制:65536输入 只有一行,一个双精度浮点数。输出 一行,保留8位小数的浮点数。样例输入 3.1415926535798932样例输出 3.1…...
2024/5/7 17:09:45 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57