What is the difference between display: inline and display: inline-block in CSS? - GeeksforGeeks

04 Dec, 2018
The display property in CSS is very useful and commonly used property which contains many values. This article contains display:inline and display:inline-block property.
“display: inline” Property: This property is used to display an element as an inline element (like <span>). The height and width properties are not effected on display:inline; property. It allows only left and right side of margins, not top and bottom. In simple words it has no line break before and after of its neighbor elements and it allows HTML next to it.
Syntax:
element {
    display: inline;
    // CSS property
}

Example 1:
<!DOCTYPE html><html>    <head>        <title>display:inline; property</title>        <style>            p {                color: green;            }            .gfg {                display: inline;                padding: 15px 15px;                border: 1px solid black;                color:white;                background-color:green;            }            div {                text-align:justify;            }            h1 {                color:green;            }            h1, h2 {                text-align:center;            }        </style>    </head>    <body>        <h1>GeeksforGeeks</h1>        <h2>display: inline; property</h2>        <div>Prepare for the Recruitment drive of product based        companies like <span class = "gfg">Microsoft, Amazon,         Adobe</span> etc with a free online placement preparation        course. The course focuses on various MCQ's & Coding question         likely to be asked in the interviews & make your upcoming         placement season efficient and successful.        </div>    </body></html>                    
Output:
“display: inline-block” Property: This property is used to display an element as an inline-level block container. The element itself is formatted as an inline element, but it can apply height and width values. It is placed as an inline element (on the same line as adjacent content). It looks like an inline element but it behaves as a block element and don’t force to line break.
Syntax:
element {
    display: inline-block;
    // CSS property
}

Example 2:
<!DOCTYPE html><html>    <head>        <title>display:inline-block; property</title>        <style>            p {                color: green;            }            .gfg {                display: inline-block;                padding: 15px 15px;                border: 1px solid black;                color:white;                background-color:green;            }            div {                text-align:justify;            }            h1 {                color:green;            }            h1, h2 {                text-align:center;            }        </style>    </head>    <body>        <h1>GeeksforGeeks</h1>        <h2>display: inline-block; property</h2>        <div>Prepare for the Recruitment drive of product based        companies like <span class = "gfg">Microsoft, Amazon,         Adobe</span> etc with a free online placement preparation        course. The course focuses on various MCQ's & Coding question         likely to be asked in the interviews & make your upcoming         placement season efficient and successful.        </div>    </body></html>                    
Output:
Attention reader! Don’t stop learning now. Get hold of all the important HTML concepts with the Web Design for Beginners | HTML  course.
CSS-Misc
CSS
HTML
Web Technologies
HTML
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
How to insert spaces/tabs in text using HTML/CSS?
Top 10 Projects For Beginners To Practice HTML and CSS Skills
How to update Node.js and NPM to next version ?
How to create footer to stay at the bottom of a Web page?
How to apply style to parent if it has child with CSS?
How to insert spaces/tabs in text using HTML/CSS?
Top 10 Projects For Beginners To Practice HTML and CSS Skills
How to update Node.js and NPM to next version ?
How to set the default value for an HTML <select> element ?
Hide or show elements in HTML using display property