Questions
21 of 49
1What is the display property in CSS used for?
2What is the default display value for <div>, <span>, <p>, and <a> tags?
3What is the difference between display: block and display: inline?
4How does display: inline-block behave?
5What happens when you set display: none on an element?
6How is display: none different from visibility: hidden?
7Can display: none affect layout reflow or accessibility?
8What’s the effect of display: block on inline elements like <span>?
9What’s the difference between display: table and actual HTML <table> elements?
10How do replaced elements (like <img> or <input>) behave with different display values?
11How is display: flex different from display: block?
12What is the difference between display: grid and display: flex?
13What happens if you apply display: inline-flex to a container?
14What is the difference between display: contents and display: none?
15What is display: list-item, and when is it used?
16How does display: run-in work, and why is it rarely used?
17What’s the difference between display: inline-grid and display: grid?
18How can you make an element behave like both inline and block elements?
19What happens to child elements when the parent has display: contents?
20How does the display property affect box model calculations?
21How can you change a block-level element to behave like an inline element without changing its tag?
22How do you center elements using display: flex or display: grid?
23How can you hide elements but keep their layout space?
24What happens to child elements when their parent has display: none?
25How can display: contents help improve semantic markup but hurt accessibility?
26What happens if you set display: flex on the <body> tag?
27How do you use display to build responsive layouts?
28What is the difference between using display and position to arrange elements?
29How can you visually hide an element but keep it accessible for screen readers?
30How does display affect stacking and z-index behavior?
31Does display: none remove an element from the DOM?
32Can an element with display: none trigger CSS transitions or animations?
33How does display interact with CSS pseudo-elements (::before, ::after)?
34What is the difference between visibility: collapse and display: none in table elements?
35How can you make text and icons align properly using display values?
36How do block formatting contexts relate to display types?
37What happens if you apply display: table to a flex container?
38How does display behave differently for replaced vs. non-replaced elements?
39Can display be animated using CSS transitions?
40How does display affect the accessibility tree and ARIA roles?
41How can you make a <li> element appear horizontally instead of vertically?
42How do you create a two-column layout without using float or position, using only display?
43How do you make an image and text sit side by side neatly?
44How would you make a navigation menu horizontally aligned using display?
45How can you make all elements behave as border-box and block-level by default?
46How would you use display: flex to make a footer stick to the bottom?
47How can display: grid simplify responsive design compared to floats?
48When would you prefer display: inline-flex over display: flex?
49How can you use display: contents to remove extra wrappers in semantic HTML structures? How can incorrect use of display lead to accessibility or SEO problems?
21 / 49

How can you change a block-level element to behave like an inline element without changing its tag?

Making a Block-Level Element Behave Like Inline Using CSS

Even if an element is inherently block-level (like <div>), you can make it behave like an inline element by changing its display property in CSS.

Options to Change Block to Inline Behavior
  1. 1

    display: inline – Makes the element behave fully like an inline element. Width and height are ignored, and it flows inline with text.

  2. 2

    display: inline-block – Keeps the element inline with text but allows you to set width, height, padding, margin, and border like a block element.

  3. 3

    display: inline-flex – Makes the element inline while establishing a flex container for its children.

  4. 4

    display: inline-grid – Makes the element inline while establishing a grid container for its children.

Example: Block to Inline Behavior

In this example, the first div behaves like inline text, ignoring width and height. The second div behaves like inline-block, allowing width, height, and spacing while remaining inline with the paragraph text.

Best Practices
  1. 1

    Use inline when you only need the element to flow with text and don't require sizing control.

  2. 2

    Use inline-block for elements that need inline flow but still respect width, height, and box model properties.

  3. 3

    Consider inline-flex or inline-grid when arranging child elements with Flexbox or Grid inside an inline-level container.

Difficulty: 2/10
Topics: display property, inline vs block, CSS layout

Scenario Questions

0-2 years experience
  1. 1

    You have a <div> that needs to sit on the same line as a paragraph of text without altering the HTML. How would you make the <div> behave like an inline element?

  2. 2

    If you set display: inline on a block-level element, what happens to its width, height, and margin handling?

2-5 years experience
  1. 1

    While building a navigation bar, the <li> items are rendering as full-width blocks and breaking the layout. Without changing the markup, how would you adjust the CSS so they line up horizontally?

  2. 2

    A <section> that should appear next to a <span> is unexpectedly dropping to a new line. Walk me through how you'd debug this and which CSS property you would modify.

5-8 years experience
  1. 1

    Your component library defines buttons as block elements, but a new feature requires them to sit inline with icons in several places. How would you design a reusable CSS utility or theming approach to switch their display without touching the component code?

  2. 2

    On a page with hundreds of block elements that now need inline behavior for a responsive redesign, discuss the performance and maintainability trade‑offs between using display: inline, inline-block, or a flex container.

8+ years experience
  1. 1

    A legacy application has thousands of block‑level components that must behave inline in a new design system. Outline a migration strategy that minimizes risk, ensures backward compatibility, and can be rolled out across multiple teams.

  2. 2

    From an architecture perspective, how would you structure your CSS (e.g., BEM, utility‑first, design tokens) to allow teams to toggle block vs. inline behavior without modifying HTML, and what governance would you put in place to keep it consistent?

Follow-up Questions

  • What practical differences do you see between using `display: inline` and `display: inline-block`?
  • How does changing the display type affect vertical alignment with surrounding text?
  • Can altering the display property introduce any accessibility or SEO concerns?