Celem jest, aby element <body> zajmował dostępną wysokość ekranu.
Jeśli nie spodziewasz się, że Twoje treści zajmą więcej niż wysokość ekranu lub planujesz utworzyć wewnętrzny przewijalny element, ustaw
body {
height: 100vh;
}
w przeciwnym razie chcesz, aby element <body> był przewijalny, gdy jest więcej treści niż ekran może pomieścić, więc ustaw
body {
min-height: 100vh;
}
samo to prowadzi do celu, aczkolwiek z możliwym i prawdopodobnie pożądanym udoskonaleniem.
Usunięcie marginesu <body>.
body {
margin: 0;
}
są ku temu dwa główne powody.
- <body> sięga do krawędzi okna.
- <body> nie ma już paska przewijania od samego początku.
PS jeśli chcesz, aby tło było gradientem radialnym, którego środek znajduje się na środku ekranu, a nie w prawym dolnym rogu, jak w przykładzie, rozważ użycie czegoś takiego jak
body {
min-height: 100vh;
margin: 0;
background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(0,0,0,1) 100%);
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=">
<title>test</title>
</head>
<body>
</body>
</html>
body { width: 100%; height: 100%; }
nie działa?