Home > Web Front-end > CSS Tutorial > How do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?

How do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?

Joseph Gordon-Levitt
Release: 2025-03-22 09:23:20
Original
409 people have browsed it

How do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?

I got this exact question in an email the other day, and I thought it would make a nice blog post because of how wonderfully satisfying this is to do in CSS these days. Plus we can sprinkle in polish to it as we go.

HTML-wise, I’m thinking image, text, image, text, etc.

<img src="How%20do%20you%20make%20a%20layout%20with%20pictures%20down%20one%20side%20of%20a%20page%20matched%20up%20with%20paragraphs%20on%20the%20other%20side?" alt="How do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?" height=""    style="max-width:90%">
<p>Text text textHow do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?</p>

<img src="How%20do%20you%20make%20a%20layout%20with%20pictures%20down%20one%20side%20of%20a%20page%20matched%20up%20with%20paragraphs%20on%20the%20other%20side?" alt="How do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?" height=""    style="max-width:90%">
<p>Text text textHow do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?</p>

<img src="How%20do%20you%20make%20a%20layout%20with%20pictures%20down%20one%20side%20of%20a%20page%20matched%20up%20with%20paragraphs%20on%20the%20other%20side?" alt="How do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?" height=""    style="max-width:90%">
<p>Text text textHow do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?</p>
Copy after login

If that was our entire body in an HTML document, the answer to the question in the blog post title is literally two lines of CSS:

body {
  display: grid;
  grid-template-columns: min-content 1fr;
}
Copy after login

It’s going to look something like this…

So cool. Thanks CSS. But let’s clean it up. Let’s make sure there is a gap, set the default type, and reign in the layout.

body {
  display: grid;
  padding: 2rem;
  grid-template-columns: 300px 1fr;
  gap: 1rem;
  align-items: center;
  max-width: 800px;
  margin: 0 auto;
  font: 500 100%/1.5 system-ui;
}
img {
  max-width: 100%;
  height: auto;
}
Copy after login

I mean… ship it, right? Close, but maybe we can just add a quick mobile style.

@media (max-width: 650px) {
  body {
    display: block;
    font-size: 80%;
  }
  p {
    position: relative;
    margin: -3rem 0 2rem 1rem;
    padding: 1rem;
    background: rgba(white, 0.8);
  }
}
Copy after login

OK, NOW ship it!

The above is the detailed content of How do you make a layout with pictures down one side of a page matched up with paragraphs on the other side?. For more information, please follow other related articles on the PHP Chinese website!

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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template