How to Make a Middle Element Fill the Remaining Width of a Container in CSS?

Mary-Kate Olsen
Release: 2024-10-27 09:25:31
Original
625 people have browsed it

How to Make a Middle Element Fill the Remaining Width of a Container in CSS?

Filling the Remaining Width of a Container with CSS

In a scenario where you have a header with three elements arranged in a row, the goal is to have the middle element occupy the remaining space within the header. To achieve this, the combination of inline-block display and the calc() function in CSS proves effective.

The Code Solution

The provided HTML structure consists of a header containing an image, a middle element with text, and a right element. To manipulate their layout, we apply CSS as follows:

<code class="css">header {
  background: red;
}

#middle {
  background: orange;
  display: inline-block;
}

#right {
  background: green;
  display: inline-block;
  width: calc(100% - 100px);
}</code>
Copy after login

Explanation

  • Inline-Block: Displaying elements as inline-blocks ensures they stay on the same line and behave like block elements, allowing for width and height adjustments.
  • calc() Function: This function performs mathematical operations on CSS values. In this case, we calculate the remaining width by subtracting the fixed width of the left element (100px) from 100%.

The result of this code is that the middle element stretches to fill the remaining space in the header, accommodating its content while the right element maintains its width of 100px.

Alternative Solution

If you prefer to have a space between the divs, you can modify the CSS by setting the font-size of the outer element (header) to 0:

<code class="css">header {
  font-size: 0;
  ...
}</code>
Copy after login

The above is the detailed content of How to Make a Middle Element Fill the Remaining Width of a Container in CSS?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template