关于Web的学习(18.5.21)——css篇

1.li与li之间有看不见的空白间隔是什么原因引起的?有什么解决办法?

行框的排列会受到中间空白(回车\空格)等的影响,因为空格也属于字符,这些空白也会被应用样式,占据空间,所以会有间隔,把字符大小设为0,就没有空格了。

详解:https://blog.csdn.net/sjinsa/article/details/70919546


2.为什么要初始化CSS样式?

因为浏览器兼容问题,不同的浏览器对有些标签的默认值是不同的,如果没对CSS初始化往往会出现浏览器之间的页面显示差异。

当然,初始化样式会对SEO有一定影响,但鱼和熊掌不可兼得,但力求影响最小的情况初始化。

最简单的初始化方法 * {padding: 0; margin: 0;} (强烈不建议)

参考:CSS样式初始化代码


3.absolute的containing block(容器块)计算方式跟正常流有什么不同?

无论属于哪种,都要先找到其祖先元素中最近的 position 值不为 static 的元素,然后再判断:

  • 若此元素为 inline 元素,则 containing block 为能够包含这个元素生成的第一个和最后一个 inline box 的 padding box (除 margin, border 外的区域) 的最小矩形;
  • 否则,则由这个祖先元素的 padding box 构成。
  • 如果都找不到,则为 initial containing block。

补充:

  • static(默认的)/relative:简单说就是它的父元素的内容框(即去掉padding的部分)
  • absolute: 向上找最近的定位为absolute/relative的元素
  • fixed: 它的containing block一律为根元素(html/body),根元素也是initial containing block


4.CSS里的visibility属性有个collapse属性值是干嘛用的?在不同浏览器下以后什么区别?

对于普通元素visibility:collapse会将元素完全隐藏,不占据页面布局空间,与display:none表现相同。如果目标元素为table,visibility:collapse将table隐藏,这点和display:none不同,依然不会占据页面布局空间。

详细(带测试):CSS里的visibility属性有个鲜为人知的属性值:collapse

网上很多说法说:谷歌浏览器中collapse和display:none效果相同,只有IE和Firefox中其table才会隐藏,但经过实际测试,发现现版本的谷歌浏览器也可以隐藏,且不占据空间。


5.position跟display、margin collapse、overflow、float这些特性相互叠加后会怎么样?

如果元素的display为none,那么元素不被渲染,position、float不起作用,如果元素拥有position:absolute或者position:fixed属性那么元素将为绝对定位,float不起作用。如果元素float属性不是none,元素会脱离文档流,根据float属性值来显示。有浮动,绝对定位,inline-block属性的元素,margin不会和垂直方向上的其他元素margin折叠。

详解:https://www.cnblogs.com/jackyWHJ/p/3756087.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您的问题是给出一个正则表达式,匹配一些IP地址段,对吧?那么这个正则表达式可以这样写: ``` ^18\.(1\.(90|97|98|99|251|252)|123\.|2\.(1[0-9]|50)\.|3\.(3|4)\.|5\.(0|2|4|5|254|255)|1(0[1-9]|1[0-9]|2[0-9]|3[0-9])\.|124\.).* ``` 其中,`^` 表示匹配开头,`.*` 表示匹配任意字符(0个或多个)。具体的匹配规则如下: - 18.x.60.x:直接写出来,18后面跟一个点,然后是任意一个字符,接着是60,最后又是一个点和任意一个字符。 - 18.1.(90|97|98|99|251|252):18后面跟一个点,然后是1,又跟一个点,后面是90、97、98、99、251或252中的一个。 - 18.123.、18.124.:18后面跟一个点,然后是123或124。 - 18.2.(1[0-9]|50).:18后面跟一个点,然后是2,又跟一个点,后面是10到19中的一个或50。 - 18.3.(3|4):18后面跟一个点,然后是3或4。 - 18.5.(0|2|4|5|254|255):18后面跟一个点,然后是5,又跟一个点,后面是0、2、4、5、254或255中的一个。 - 18.1(0[1-9]|1[0-9]|2[0-9]|3[0-9])\.:18后面跟一个点,然后是1,又跟一个任意数字,这个数字的范围是01到39。 - 18.(101-119).x.x:18后面跟一个点,然后是101到119中的一个,又跟两个点和任意两个字符。 - 18.123.x.x:18后面跟一个点,然后是123,又跟两个点和任意两个字符。 - 18.2.50.x、18.5.50.x:18后面跟一个点,然后是2或5,又跟一个点和50,最后又是一个点和任意一个字符。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值