Как убрать пробел между inline-block элементами в CSS
CSS-свойство display
со значением inline-block
очень полезно для управления размерами, а также margin
и padding
встроенных элементов.
Однако при использовании display: inline-block;
пробелы в HTML-коде создают визуальное пространство на экране. Но избавиться от него можно с помощью следующих простых приемов.
Решение 1. Удалить пространство между элементами
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Removing Extra Space Between the Elements</title>
<style>
ul {
padding: 0;
list-style: none;
}
ul li {
display: inline-block;
background: #ffa500;
padding: 5px 20px;
}
</style>
</head><body> <h2>Normal Behavior</h2> <ul> <li><a href="#">Home</a></li> <li><a href="#">About</a></li> <li><a href="#">Contact</a></li> </ul> <hr> <h2>After Removing Spaces</h2> <ul> <li><a href="#">Home</a></li><li><a href="#">About</a></li><li><a href="#">Contact</a></li> </ul></body></html>
Решение 2. Установить нулевой размер шрифта для родительского элемента
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Setting Zero Font-size on Parent Element</title>
<style>
ul {
padding: 0;
list-style: none;
font-size: 0;
}
ul li {
font-size: 16px;
display: inline-block;
background: orange;
padding: 5px 20px;
}
</style>
</head><body> <ul> <li><a href="#">Home</a></li> <li><a href="#">About</a></li> <li><a href="#">Contact</a></li> </ul></body></html>
Вы также можете использовать отрицательное поле в 4 пикселя, например margin: -4px;
для inline-block
элементов, чтобы решить эту проблему, однако два вышеупомянутых метода более просты.