页面建构-一周学习总结
替换元素:替换元素和标签自封闭元素是可以划等号的,常用的有input,img,link,br等标签。
元素的嵌套规则:块级元素可以嵌套所有的行内元素,除a以为的行内元素不能嵌套块级元素。
块级格式化上下文:阻止边距折叠,可以包含内部元素的浮动,阻止元素被浮动覆盖
关于line-height:(1)所有继承下来的元素会忽略本身的font-size,而使用相同的,计算出来的line-height。如果line-height的值是数字,所有继承下来的元素使用基于font-size算出来的line-height.(2)inline box 不会让内容显示成块形式而是排成一行,inline boxes在containing box里一个接一个组成了line box.Content area是围绕着文字的看不见的一种box,它的高取决于font-size。|(font-size)-(line-height)|=行间距,拆分行间距来创建一个”半行间距“,半行间距会被应用在content area的顶部和底部。(3)line box高度取决于它内部最高的line box或者是存在的图像
负margin值:(1)对于浮动的元素,如果margin设置的方向和float的方向相同,那么这时浮动元素发生移动。如果margin设置的方向和float的方向相反,那么这时是设计到参考线的问题,元素本身不移动。参考线是对下面一个元素而言的,下一个元素会将参考线对待为自己的边界。但是实际上前一个盒子的边界并未改变。只是后面一个盒子自作多情而已。
浮动:(a)浮动框的定位:当前浮动框的定位会受到先前生成的同向浮动框的影响,它们不能相互遮盖。当前浮动框需要紧挨着先前同向浮动框的外边界进行定位,如果当前行空间不足,则折行,放置到它之前浮动框的下面。(b)由于浮动框并不在常规流中,在该浮动框之前或之后创建的非定位框垂直排列,就好像浮动框并不存在一样。然而,浮动框之后创建的行框会被缩短,为浮动框提供空间。如果被缩短的行框无法再容纳更多的内容,它将向下移动,直到有足够的空间或没有更多的浮动元素为止。
其次,在这种情况下,找出可用宽度(available width),这个宽度为包含块减去 'margin-left'、'border-left-width'、'padding-left'、 'padding-right'、'border-right-width'、'margin-right' 以及所有相关滚动条的宽度。然后得到公式:"shrink-to-fit" 的宽度 = min ( max ( 首选最小宽度, 可用宽度 ) , 首选宽度 ).
水平居中:文本、图片等行内元素的水平居中:给父元素设置text-align:center;固定宽带的块级元素:margin:0 auto;不确定宽度的块级元素:以分页模块为例,因为分页的数量是不确定的,所以我们不能通过设置宽度来限制宽度来限制它的弹性。