CSS定位方式与相对宽度

前段时间有个后端小伙伴被拉去写前端,出现了一个让他困惑不已的问题:明明给子元素设置了width:80%;可为什么还是子元素超出了父元素的宽度?

这里涉及到width属性的值的类型:width属性可以设置两种值,一种是绝对长度值,另外一种是相对长度值,相对长度值又根据参照物不同分为view height/view widthpercentage

所谓相对长度,那肯定会有参照物,其中vh/vw方式是参照窗口高宽确定的(浏览器参照),percentage方式是参照DOM元素确定的(页面内部参照)。但是问题就出现在这里,percentage参照的是哪个元素呢?是body、父级、还是兄弟元素?它又有哪些规则?

为了说明,我写了个简单的演示。

surface go上手体验

surface go上手差不多一周了,买的是8g+128g的版本,使用起来性能没有网上说的那么弱鸡。跑跑前端工具什么的都没有问题,屏幕素质非常好,色温6500K左右,不知道有没有出厂校色。