这里集合一下小的、杂碎的知识点。
Hello,欢迎来到我的博客,每天一道面试题,我们共同进步。
答:不区分,(HTML, CSS都不区分,但为了更好的可读性和团队协作,一般都小写,而在XHTML 中元素名称和属性是必须小写的。)
答:不起作用。(需要注意行内元素的替换元素img、input,他们是行内元素,但是可以为其设置宽高,并且margin属性也是对其起作用的,有着类似于Inline-block的行为)。
<style>
body {
background-color: lightseagreen;
}
span {
margin-top: 30px;
margin-bottom: 30px;
background-color: green;
}
img {
margin-top: 100px;
margin-bottom: 100px;
background-color: yellowgreen;
}
</style>
<div>
<span>我是行元素</span>
</div>
<div class="">
<img src="" alt="我是img的行内元素">
</div>
答:不会。同上题,要注意行内元素的替换元素,img设置padding-top/bottom是会起作用的。
(1) 第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等待服务器B确认。
(2) 第二次握手:服务器B收到SYN包,必须确认客户A的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器B进入SYN_RECV状态。
(3) 第三次握手:客户端A收到服务器B的SYN+ACK包,向服务器B发送确认包ACK(ACK=k+1),此包发送完毕,客户端A和服务器B进入ESTABLISHED状态,完成三次握手
第一次挥手:Client发送一个FIN,用来关闭Client到Server的数据传送,Client进入FIN_WAIT_1状态。
第二次挥手:Server收到FIN后,发送一个ACK给Client,确认序号为收到序号+1(与SYN相同,一个FIN占用一个序号),Server进入CLOSE_WAIT状态。
第三次挥手:Server发送一个FIN,用来关闭Server到Client的数据传送,Server进入LAST_ACK状态。
第四次挥手:Client收到FIN后,Client进入TIME_WAIT状态,接着发送一个ACK给Server,确认序号为收到序号+1,Server进入CLOSED状态,完成四次挥手。
都是元素隐藏,在文档流中,display:none不占位置。visibility:hidden占位置。 性能上,display比visibility差。display控制显示隐藏时,页面会产生回流(当页面中的一部分元素需要改变规模尺寸、布局、显示隐藏等,页面重新构建,此时就是回流。所有页面第一次加载时需要产生一次回流)
重绘(repaints)是一个元素外观的改变所触发的浏览器行为,例如改变vidibility、outline、背景色等属性。浏览器会根据元素的新属性重新绘制,使元素呈现新的外观。重绘不会带来重新布局,并不一定伴随回流。 回流(reflow)是更明显的一种改变,可以理解为渲染树需要重新计算。
CSS3实现圆角(border-radius:8px),
阴影(box-shadow:10px),
对文字加特效(text-shadow),
线性渐变(gradient),
旋转(transform)
transform:rotate(9deg) scale(0.85,0.90) translate(0px,-30px) skew(-9deg,0deg);//旋转,缩放,定位,倾斜
增加了更多的CSS选择器 多背景 rgba
html5新增:canvas绘画,本地离线存储localStorage,sessionStorage,video和audio元素,语义化元素,表单类型(date,time,email等),地理定位等等
块级元素
行内元素
行内置换元素
浏览器依据元素的标签和属性来决定元素的具体显示内容
img、input、textarea、select、object属于行内置换元素, 具有块级元素的特征(除宽度外)
元素脱离文档流,但因为没有设置属性导致无法具体定位,紧跟在上个元素之后,但下个元素排列时会忽略此元素。
<style>
.common {
width: 300px;
height: 200px;
border: 1px solid lightcoral;
}
.absolute {
position: absolute;
width: 100px;
height: 100px;
background-color: #ddd;
}
</style>
<body>
<div class="common"></div>
<div class="absolute"></div>
<div class="common"></div>
</body>
移除空格、使用margin负值、使用font-size:0、letter-spacing、word-spacing
CSS规范规定,每个元素都有display属性,确定该元素的类型,每个元素都有默认的display值
行内元素有:
<a> <span> <img> <input> <select> <label> <strong>(强调的语气)
块级元素有:
<div> <ul> <ol> <li> <dl> <dt> <dd> <h1> <h2> <h3> <h4>…<p> <table> <form>
常见的空元素:
<br> <hr> <img> <input> <link> <meta>
鲜为人知的[空元素]是:
<area> <base> <col> <command> <embed> <keygen> <param> <source> <track> <wbr>
源(origin)就是协议、域名和端口号。 若地址里面的协议、域名和端口号均相同则属于同源。 以下是相对于 http://www.a.com/test/index.html 的同源检测
• http://www.a.com/dir/page.html ----成功
• http://www.child.a.com/test/index.html ----失败,域名不同
• https://www.a.com/test/index.html ----失败,协议不同
• http://www.a.com:8080/test/index.html ----失败,端口号不同