前几天被朋友问到几个CSS问题,讲道理么,接触CSS是从大一开始的,也算有3年半了,总是觉得自己对css算是熟悉的了.然而还是被几个问题弄的"一脸懵逼"... 然后又是刚入职新公司,事情不算多,于是拿起<CSS权威指南>进行"基础复习"+"查漏补缺",本篇文章主要是总结了些自己认为CSS中值的注意的几个知识点(本文知识点仅限本书范围内,若要讲CSS全部样式,那本兽还是选择慢慢懵逼去~). 选择器 这里要说明的是类选择器的嵌套选择与多类…
行内替换元素 替换元素比如图片的高度比line-height大,并不会影响整个文字段落的line-height,会让有图片那一行框的高度可以容纳这个图片. 这个图片依然有一个line-height,和在一起的行内元素一样,因为垂直对齐vertical-align值为百分比时要在这个基础上计算. * * * 增加框属性 替换元素的内容区包括,元素的内外边距及边框.会影响当前行的行框高. margin可以为负值,负边距是挤入其他行的唯一方法. * * * 替换元素和基线 替换元素位于基线之上. 这样…
行内元素 em a 非替换元素 img 替换元素 两者在内联内容处理方式不一样. inline有时候被翻译成内联,比如inline content,有时候被翻译成行内 inline box. 行布局 行内元素只是生成一个框,没有其他内容(里面不能放框了可能)与之并存. 单行行内元素 多行行内元素 相邻两行之间的边框,firefox不重叠,上一行的下边界在下一行的上边界的下边,交错着的.似乎chrome是重合的不一样. 水平方向对齐方式 text-align left right center j…
标签script 我们知道,html要使用js就要使用<script>标签. 两种方式: 一是直接在<script>这里</script>写入代码. 二是在别的文件写好js代码,然后script标签的src属性引入进来.   script其实有6个属性(全都是可选): src:包含要执行代码的外部文件: language:现在已废弃: type:表示编写代码使用的脚本语言的内容类型: charset:指定src引入代码的字符集: async:表示应该立即下载脚本: de…
Flutter 基础知识查漏补缺 Hot reload原理 热重载分为这几个步骤 扫描项目改动:检查是否有新增,删除或者改动,直到找到上次编译后发生改变的dart代码 增量编译:找到改变的dart代码,将其转化为增量支持动态编译的dart kernel 推送更新:热重载模块将增量更新的代码通过HTTP端口发送到在虚拟机上的Dart VM 代码合并:Dart Vm收到增量的dart kernel代码,将其与原有的dart vm代码合并,并加载新的dart kernel代码 widget重建:在确认…
本文大部分问题来源:50道CSS基础面试题(附答案),外加一些面经. 我对问题进行了分类整理,并给了自己的回答.大部分知识点都有专题链接(来源于本博客相关文章),用于自己前端CSS部分的查漏补缺.虽作为一个面试资料,但感觉也能帮助前端新手梳理CSS的知识点. 开胃餐-两道常见考题 盒子模型 样式与选择器 CSS3 包含块 BFC 中插小点 定位position display与visibility float flexbox overflow 响应式设计 CSS优化 应用 开胃餐x2 用纯CSS…
CSS3从入门到深入(复习查漏向 pre_section CSS:层叠样式表,决定网页表现 网页为多层结构,CSS为每一层设置样式,最后显示最上一层 CSS语句 = 选择器 + 声明块 形式 内联样式 style="CSS语句"作为标签属性,仅本标签可以使用 内部样式表 head标签中使用style标签+CSS语句,仅当前文件可以使用 外部样式表 CSS语句作为独立文件,HTML需要使用时通过<link rel="stylesheet" href="…
js基础查漏补缺: 1. NaN != NaN: 复制数组可以用slice: 数组的sort.reverse等方法都会改变自身: Map是一组键值对的结构,Set是key的集合: Array.Map.Set都属于iterable类型,可用for...of遍历: 2. rest参数只能写在最后,前面用...标识: 一个函数接收另一个函数作为参数称之为高阶函数,比如map.reduce.filter.sort: arr.map(String) 将数组元素都变为string类型: // 数组去重 ar…
Java基础查漏补缺(2) apache和spring都提供了BeanUtils的深度拷贝工具包 +=具有隐形的强制转换 object类的equals()方法容易抛出空指针异常 String a=null; /*使用a.equals(b)抛出异常 优化方法1,若b为常量,即a.equals("test") 此时调用"test".equals(a)可避免空指针错误 优化方法2,使用Objects工具类:java.util.Objects 调用Objects.equal…
Java基础查漏补缺 String str2 = "hello"; String str3 = "hello"; System.out.println(str3==str2);//true Java运行时会维护一个String Pool(String池).String池用来存放运行时中产生的各种字符串,并且池中的字符串的内容不重复.而一般对象不存在这个缓冲池,并且创建的对象仅仅存在于方法的堆栈区. break需要在switch和loop内: (虽然没有这么做过--)…