body{
margin:0;
padding:0;
}当我用这样设置时,并且已经设置了height 和line-height,为什么效果是上面那样的?
当我改成*{
margin:0;
padding:0;
}
时,用*选择,文字达到了垂直居中的效果,也就是下图,这两者之间都什么区别?
为什么body达不到这个效果呢?
这方面推荐看下哪方面的知识?
*{} 包括<html>与</html>中的所有属性样式定义,只要其下方没有再次对标签进行独立定义,则样式按通配符 * {} 所定义的来执行。
body{}包括<body>与</body>中的样式定义,只要其下方没有再次对标签进行独立定义,则样式按 body {} 所定义的来执行。
* 最常用的是 *{margin:0;padding:0;} 可以使所有的浏览器这两项默认值统一,有利于后期的兼容性调整。
最外层设置一个布满屏幕的DIV后设置属性,这是很多设计者使用的办法,它可以解决一个页面整体可见元素居中的问题,还可以解决漏掉的一些元素定义的问题,如背景,有些块状元素<div>等没有定义背景,将直接使用最外部的一个背景设置。
*代表所有的,body只是表示body所包含的元素