div你的高度是由什么决定的?
div高度由其内部文档流元素的高度总和决定
当你的眼睛 眯着笑 当你喝可乐 当你吵……
当你没有孩子时候,div你没有高度;可当你有孩子的时候,div你就开始有高度了……
话说你生的是男孩(块级元素)还是女孩(内联元素)
如果是男孩的话:
这个男孩长大以后一定会跟你一样霸道,比如:坐大巴的时候,你坐到后面就是一躺,所有位置都给占完了,你让没位置的人怎么办?
如果是女孩的话:
肯定不会像你坐大巴那样,最后排一躺,睡起。肯定是一个人一个人挨着坐啊
所以什么是文档流?
懵逼……
所谓文档流,即形容块级元素的从上往下,另起一行的纵向流动方式和内联元素从左往右,一行不能容纳就到下一行的的水平流动方式。就像是坐大巴一样,块级元素相当于每一行就只能坐一个人,而内联元素相当于每一行都坐满人,这一行坐满了就到下一行去。
所以div你有多高?取决于你内部文档流元素的高度总和,注意不是等于
span元素的高度?
你写了一个span,给了几个字符,如你好;给上字体大小,如100px。
为了更好地显示,你给上了边框
然后你你开始猜测这个span到底有多高呢?是100px吗?还是比100px大?
应该是比100px大,为什么?因为字体有建议行高啊!当你不设置行高的时候,浏览器就用建议行高啊!
既然如此,那么span的高度等于字体的建议行高?
答案是NO!
当你换了一种字体,去测量span的高度时,会发现,span的高度变化了,你会惊讶明明就是字体不同,为啥span的高度不一致了?
所以span的高度是无法确定的,它是由建议行高和字体的相关设计决定的。总之,这个span的高度归根到底还是由设计师决定的,前端无法确定。