display: inline
속성과 비교하면, 가장 중요한 차이는 display: inline-block
속성은 요소에 너비와 높이를 설정을 허용한다는 것입니다.
또한, display: inline-block
속성으로, 상단 및 하단 마진/패딩이 적용되지만, display: inline
속성은 상단 및 하단 마진/패딩이 적용되지 않습니다.
display: block
속성과 비교하면, 가장 중요한 차이는 display: inline-block
속성은 요소 다음에 줄바꿈(line-break)을 추가하지 않아서, 요소는 다른 요소 옆에 위치할 수 있습니다.
하기의 예제에서 display: inlin
, display: inline-block
그리고 display: block
속성의 다른 동작방식을 확인할 수 있습니다.
<!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>The display Property</title> <style> span.a { display: inline; /* the default for span */ width: 100px; height: 100px; padding: 5px; border: 1px solid blue; background-color: yellow; } span.b { display: inline-block; width: 100px; height: 100px; padding: 5px; border: 1px solid blue; background-color: darkgoldenrod; } span.c { display: block; width: 100px; height: 100px; padding: 5px; border: 1px solid blue; background-color: greenyellow; } </style> </head> <body> <h1>The display Property</h1> <h2>display: inline</h2> <div> orem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum consequat scelerisque elit sit amet consequat. Aliquam erat volutpat.<span class="a">Aliquam</span><span class="a">venenatis</span>gravida nisl sit amet facilisis. Nullam cursus fermentum velit sed laoreet. </div> <h2>display: inline-block</h2> <div> orem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum consequat scelerisque elit sit amet consequat. Aliquam erat volutpat.<span class="b">Aliquam</span><span class="b">venenatis</span>gravida nisl sit amet facilisis. Nullam cursus fermentum velit sed laoreet. </div> <h2>display: inline</h2> <div> orem ipsum dolor sit amet, consectetur adipiscing elit. Vestibulum consequat scelerisque elit sit amet consequat. Aliquam erat volutpat.<span class="c">Aliquam</span><span class="c">venenatis</span>gravida nisl sit amet facilisis. Nullam cursus fermentum velit sed laoreet. </div> </body> </html>
display: inline-block
속성의 일반적인 사용 용도는 세로(수직)이 아닌 가로(수평)로 항목들을 표시하는 것입니다.
하기의 예제는 가로(수평) 방향으로 네비게이션 링크를 만듭니다.
<!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>Horizontal Navigation Links</title> <style> .nav { background-color: yellow; list-style-type: none; text-align: center; margin: 0; padding: 0; } .nav li { display: inline-block; font-size: 20px; padding: 20px; } </style> </head> <body> <h1>Horizontal Navigation Links</h1> <p> By default, list items are displayed vertically. In this exmaple, we use display: inline-block to display them horizontally (side by side). </p> <p> Note: If you resize the browser widnow, the links will automatically break when it becomes too crowded. </p> <ul class="nav"> <li><a href="#home">Home</a></li> <li><a href="#about">About Us</a></li> <li><a href="#clients">Our Clients</a></li> <li><a href="#contact">Contact Us</a></li> </ul> </body> </html>