问题:css 中 body 不加高度,background 中 的 渐变 不起作用?
错误案例一:
代码效果:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>渐变实验</title>
</head>
<style>
*{
margin: 0;
padding: 0;
}
html{
}
body{
background: linear-gradient(to left, red 0%,black 90%);
}
</style>
<body>
</body>
</html>
错误案例二:
代码效果:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>渐变实验</title>
</head>
<style>
*{
margin: 0;
padding: 0;
}
html{
}
body{
height: 100%;
background: linear-gradient(to left, red 0%,black 90%);
}
</style>
<body>
</body>
</html>
———————————————————————————————————————————————————————————————我是分区线——————————————————
成功案例一:
代码效果
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>渐变实验</title>
</head>
<style>
*{
margin: 0;
padding: 0;
}
html{
height: 100%;
}
body{
height: 100%;
background: linear-gradient(to left, red 0%,black 90%);
}
</style>
<body>
</body>
</html>
成功案例二:
代码效果
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>渐变实验</title>
</head>
<style>
*{
margin: 0;
padding: 0;
}
html{
height: 100%;
}
body{
background: linear-gradient(to left, red 0%,black 90%);
}
</style>
<body>
</body>
</html>
要点:
如果本层DOM 没有设立高度,编译器就会向它的父级DOM 寻找高度。
所以就算 body 没有设立高度,只要 html设立即可。