当前位置: 首页 > Web前端 > CSS

前端入门-day2(css常见问题及解答)

时间:2023-03-30 17:58:30 CSS

写在前面今天是前端入门day2,小伙伴们应该看过一些HTML和CSS的基础知识,有没有遇到很多关于CSS的问题?呢绒布。因为HTML很少有太复杂的问题,所以直接写个关于CSS的FAQ和答案~display:none;的区别和可见性:隐藏;简单地说:显示:无;就像它不存在一样。可见性:隐藏;只是将透明度变为0并仍然占据其空间。必须首先弄清楚内联、内联块和块之间的区别。每个标签都有其默认的显示属性值。例如:

标签默认显示:block;标签默认显示:inline;但是,可以覆盖默认值。即可以设置display:inline;对于
标签,显示:块对于标签。接下来说说区别:fordisplay:block;它占据一行,也就是说,它周围不允许有其他元素。可以设置宽度和高度。当没有设置宽度时,它的宽度将被填满。top,bottom,left,right的padding和margin会起作用(这里的作用是指距离其他元素可以拉开的距离)。对于显示:内联;它不会占据一行,并且可以允许其他元素围绕它。宽度和高度被内容扩展,设置宽度和高度无效。左边和右边的margin和padding可以增加距离,但是top和bottom的margin和padding不能增加距离。这里还有更多需要注意的事情。用于显示:内联块;它就像内联和块的组合。允许其他元素包围它。可以设置宽度和高度。重点讲解inline的padding-top或者padding-bottom。在给行内元素设置这两个值的时候,实际上是加上了padding。在设置背景色的时候,可以清楚的看到背景色被应用到padding上了,但是并没有增加与下方元素的距离。.代码如下:block1block2block3
.block1{background-颜色:浅蓝色;宽度:100px;//无效高度:500px;//无效的margin-right:20px;底部边距:20px;//无法打开padding-left:10px;填充底部:10px;//无法开启distance}.block2{display:inline-block;宽度:300px;//worksbackground-color:lightgray;}.block3{background-color:red;}图片如下:border-radius:999px;和边界半径:50%;正确的理解。先看代码:block1
block2
.block1{width:200px;高度:100px;背景颜色:浅蓝色;border-radius:999px;}.block2{width:200px;高度:100px;背景色:浅灰色;border-radius:50%;}首先需要注意的是设置border:999px;只是说设置一个很大的值,其实并不是用来设置999px的,只要明白原理,就可以找到临界值。其次,设置border-radius:999px;其实就是在x和y方向设置两个值,相当于border-radius:999px/999px;当我们设置border-raidus:999px;时,你首先可以想象在一个矩形内绘制了两个巨大的圆圈。因为两个圆圈太大,重叠了。根据文档中的这段话:意思是:L是边长,S是border-radius两个方向集合中的值之和,如果f=min(L/s)小于1,border-radius必须乘以f才能缩小。以上面代码为例,因为最小边为100px,s为999px+999px,所以f=100/(999+999)小于1,所以border-radius必须乘以f得到边框-半径:999px;相当于border-radius:50px;所以它变成了block1中的跑道形状。当我们设置border-raidus:50%;时,下图足以说明:总结:border-radius:50px;相当于border-radius:50px/50px;有两个方向。通常50%的radius使用较多,常用于设置圆形头像,对于方形元素可以设置border-radius:50%来实现。当border-radius很大时,会出现重叠,导致一起收缩,收缩到最短边的一半。margin和padding的区别,什么时候用哪个?区别:首先,border作为边框,margin在border外,padding在border内。其次,背景颜色将应用于填充,而不是边距。可能存在垂直方向合并边距的问题(具体可以搜索margincollapseoroutermarginmerging)。我的用法:通常,我会这样使用:当需要增加内部元素和父元素之间的距离时,在父元素中添加padding时,使用marginson1
son2
.container{background-color:lightblue;padding:10px;}.son1{margin-bottom:10px;background-color:orange;}.son2{background-color:lightgray;}最后一篇本文先到此结束,阅读时间过长,将拆分到下一篇。下一篇还是关于一些CSS的问题~