목차
문제 이해 : figcaption의 기본 동작
해결책 : 인라인 블록 컨테이너
HTML 구조
CSS 스타일
완전한 샘플 코드
웹 프론트엔드 HTML 튜토리얼 HTML/CSS는 멀티 그래프 그리드 레이아웃 및 제목 정렬을 인식합니다

HTML/CSS는 멀티 그래프 그리드 레이아웃 및 제목 정렬을 인식합니다

Aug 13, 2025 pm 06:57 PM

HTML/CSS는 멀티 그래프 그리드 레이아웃 및 제목 정렬을 인식합니다

이 튜토리얼은 그리드에서 HTML에서 여러 이미지를 구현하고 각 이미지 아래의 해당 텍스트를 표시하는 문제를 해결하는 것을 목표로합니다. Figcaption이 레이아웃 오정렬을 유발하는 블록 레벨 요소 인 이유를 탐색하고 디스플레이를 기반으로 솔루션을 제공합니다. 인라인 블록 속성은 이미지 및 제목에 대한 통합 패키징 컨테이너를 만들어 그래픽 및 텍스트의 유연하고 반응적인 나란한 표시를 달성 할 수 있습니다.

문제 이해 : figcaption의 기본 동작

웹 디자인에서는 종종 각 이미지 아래에 짧은 설명 텍스트와 함께 이미지 갤러리 또는 제품 목록을 표시해야합니다. 초보자는 HTML/CSS는 멀티 그래프 그리드 레이아웃 및 제목 정렬을 인식합니다 태그와

태그를 직접 나란히 배치하려고 시도하여 여러 열에 자동으로 배열 될 수 있습니다. 예를 들어:

 <img  src="img1.png" alt="HTML/CSS는 멀티 그래프 그리드 레이아웃 및 제목 정렬을 인식합니다" > <figcaption> "image 1 title"</figcaption>
<img  src="img2.png" alt="HTML/CSS는 멀티 그래프 그리드 레이아웃 및 제목 정렬을 인식합니다" > <figcaption> "image 2 title"</figcaption>

그러나이 관행은 종종 각 이미지를 초래하고 제목은 나란히 표시되지 않고 한 줄에 배타적입니다.

요소는 기본적으로 HTML의 블록 레벨 요소 이기 때문입니다. 블록 레벨 요소는 부모 컨테이너의 전체 너비를 차지하고 후속 컨텐츠를 새 라인에 표시하도록합니다. 따라서 그림 자체가 인라인 교체 요소 인 경우에도 Figcaption의 블록 레벨 특성은 예상 다중 열 레이아웃을 파괴합니다.

해결책 : 인라인 블록 컨테이너

이 문제를 해결하기 위해서는 각 이미지와 해당 제목을 나란히 배열 할 수있는 독립 "단위"로 취급해야합니다. 가장 효과적인 방법은 각 이미지 및 제목 그룹에 대한 공통 포장 컨테이너를 만들고 디스플레이를 사용하는 것입니다. CSS의 인라인 블록 속성을 사용하여 이러한 컨테이너의 레이아웃을 제어하는 것입니다.

디스플레이 : 인라인 블록은 인라인 요소와 블록 레벨 요소의 특성을 결합한 매우 강력한 CSS 속성입니다.

  • 인라인 특성 : 요소는 텍스트와 같은 줄에 나란히 표시 될 수 있으며 공간이 부족할 때 자동으로 랩핑됩니다.
  • 블록 레벨 속성 : 요소는 너비 (너비), 높이 (높이), 내부 및 외부 마진 (마진, 패딩)과 같은 블록 레벨 속성을 설정할 수 있으며 내용은 블록 레벨 요소의 규칙에 따라 배치 될 수 있습니다.

이미지와 제목을 div (또는 더 의미 요소)로 감고 디스플레이를 적용 하여이 래퍼 컨테이너에 인라인 블록을 적용하면 원하는 그리드 레이아웃을 달성 할 수 있습니다.

HTML 구조

우리는 각 이미지와 그 제목을 div로 래핑하고 이미지 래퍼와 같은 클래스 이름을 추가합니다.

 <div class="Gallery-Container">
    <div class="image-wrapper">
        <img src="img1.png" alt="picture 1">
        <figcaption> 이미지 1 제목 </figcaption>
    </div>
    <div class="image-wrapper">
        <img src="img2.png" alt="picture 2">
        <figcaption> 이미지 2 제목 </figcaption>
    </div>
    <div class="image-wrapper">
        <img src="img3.png" alt="picture 3">
        <figcaption> 그림 3 제목 </figcaption>
    </div>
    
</div>

참고 : 시맨틱 화를 향상시키기 위해

요소를 그림과 제목의 래퍼로 사용하는 것이 좋습니다. 위의 DIV의 예는 원래 질문과 답변 솔루션에 직접 일치하는 것이지만 실제 개발에서
가 더 나은 선택입니다.

CSS 스타일

다음으로 .Image-Wrapper 클래스에 CSS 스타일을 추가합니다.

 
    .Gallery-container {
        텍스트 정렬 : 센터; /* 선택 사항 : 상위 컨테이너의 모든 이미지 그룹을 중앙으로 중앙*/
    }

    .Image-Wrapper {
        디스플레이 : 인라인 블록; /* 키 : 사진 그룹 디스플레이를 나란히 만들기*/
        텍스트 정렬 : 센터; /* 컨테이너 내부의 이미지와 제목을 중심으로*/
        여백 : 10px; /* 선택 사항 : 사진 그룹 간 간격 설정*/
        수직 정상 : 상단; /* 선택 사항 : 컨텐츠 높이가 다르기 때문에 오정렬을 피하기 위해 상단을 정렬*/
        너비 : calc (33.33% -20px); / * 예 : 3 개의 열 레이아웃, 왼쪽 및 오른쪽 마진 마이너스 */
        최대 width : 250px; /* 각 그림의 최대 너비 제한*/
    }

    .Image-Wrapper img {
        최대 전역 : 100%; /* 이미지가 컨테이너 내에서 반응 적으로 스케일링되어 있는지 확인하십시오*/
        높이 : 자동; /* 사진 종횡비 유지*/
        디스플레이 : 블록; /* 그림이 독립적인지 확인하고 하단 격차를 피하십시오*/
        마진 : 0 Auto 5px; /* 사진은 제목에서 중앙에 있고 간격을두고 있습니다*/
    }

    .Image-Wrapper figcaption {
        글꼴 크기 : 0.9EM;
        색상 : #555;
        패딩 : 5px;
    }

    / * 반응 조정 (선택 사항) */
    @Media (max-width : 768px) {
        .Image-Wrapper {
            너비 : calc (50% -20px); /* 중간 화면 두 개의 열이 표시*/
        }
    }

    @Media (max-width : 480px) {
        .Image-Wrapper {
            너비 : calc (100% -20px); /* 작은 화면이 열을 표시합니다*/
        }
    }
스타일>

주요 CSS 속성 설명 :

  • 디스플레이 : 인라인-블록; : 이것은 나란히 레이아웃을 구현하는 핵심입니다.
  • Text-Align : Center; : 이미지와 제목이 해당 컨테이너 내의 수평으로 중앙에 있도록 .Image-Wrapper 내부에 적용됩니다.
  • 여백 : 10px; : 각 이미지 그룹에 외부 간격을 추가하여 단단히 맞지 않도록하십시오.
  • 수직-정상 : 상단; : 인라인 블록 요소의 내용이 높이가 다를 때이 특성은 상단에 정렬되어 고르지 않은 바닥을 피합니다.
  • 너비 : calc (33.33% -20px); : 이것은 3 열 레이아웃을 구현하는 예입니다. calc () 함수는 CSS에서 수학적 계산을 허용하며, 각 열의 너비가 계산되고 왼쪽 및 오른쪽 여백이 뺄 수 있습니다.
  • 최대 전역 : 100%; 및 높이 : Auto; : IMG 태그에 적용되어 반응 형 레이아웃에서 부모 컨테이너의 크기에 따라 이미지를 자동으로 조정하고 원래 종횡비를 유지할 수 있습니다.
  • 디스플레이 : 블록; (IMG의 경우) : IMG는 인라인 교체 요소이지만 표시되도록 설정하십시오. 블록은 이미지 아래에 나타날 수있는 여분의 블랭크를 제거하고 (일반적으로 기준선 정렬로 인해) 마진 : 0 Auto를 통해 더 쉽게 중앙을 중심으로 할 수 있습니다.

완전한 샘플 코드

HTML 구조와 CSS 스타일을 결합하면 기능적으로 완전한 사진 그리드 레이아웃이 제공됩니다.

 


    <meta charset="utf-8">
    <meta name="viewport" content="width = device-width, 초기 스케일 = 1.0">
    <title> 사진 및 제목 그리드 레이아웃 </title>
    
        몸 {
            Font-Family : Arial, Sans-Serif;
            마진 : 20px;
            배경색 : #f4f4f4;
        }

        .Gallery-container {
            최대 width : 1200px;
            여백 : 0 Auto;
            패딩 : 10px;
            배경색 : #fff;
            Border-Radius : 8px;
            Box-Shadow : 0 2PX 5PX RGBA (0,0,0,0.1);
            텍스트 정렬 : 센터; /* 부모 컨테이너의 모든 이미지 그룹을 중앙으로 중앙*/
        }

        .Image-Wrapper {
            디스플레이 : 인라인 블록; /* 키 : 사진 그룹 디스플레이를 나란히 만들기*/
            텍스트 정렬 : 센터; /* 컨테이너 내부의 이미지와 제목을 중심으로*/
            여백 : 10px; /* 사진 그룹 간 간격 설정*/
            수직 정상 : 상단; /* 상단 정렬*/
            너비 : calc (33.33% -20px); / * 예 : 3 개의 열 레이아웃, 왼쪽 및 오른쪽 마진 마이너스 */
            최소값 : 150px; /* 너무 작게 방지하기위한 최소 너비*/
            박스 사이징 : 국경 박스; /* 패딩과 테두리가 너비에 포함되어 있는지 확인하십시오*/
        }

        .Image-Wrapper img {
            최대 전역 : 100%; /* 이미지가 컨테이너 내에서 반응 적으로 스케일링되어 있는지 확인하십시오*/
            높이 : 자동; /* 사진 종횡비 유지*/
            디스플레이 : 블록; /* 사진이 자리 표시 자와 무관한지 확인*/
            마진 : 0 Auto 8px; /* 사진은 제목에서 중앙에 있고 간격을두고 있습니다*/
            Border-Radius : 4px;
        }

        .Image-Wrapper figcaption {
            글꼴 크기 : 0.9EM;
            색상 : #333;
            패딩 : 0 5px;
            라인 높이 : 1.4;
        }

        /* 응답 조정*/
        @Media (max-width : 768px) {
            .Image-Wrapper {
                너비 : calc (50% -20px); /* 중간 화면 두 개의 열이 표시*/
            }
        }

        @Media (max-width : 480px) {
            .Image-Wrapper {
                너비 : calc (100% -20px); /* 작은 화면이 열을 표시합니다*/
            }
        }
    스타일>



    <div class="Gallery-Container">
        <div class="image-wrapper">
            <img src="https://via.placeholder.com/250x180/ff5733/fffff?text=image%201" alt="아름다운 풍경 1">
            <figcaption> 이것은 자연의 매력을 보여주는 아름다운 풍경입니다. </figcaption>
        </div>
        <div class="image-wrapper">
            <img src="https://via.placeholder.com/250x200/33ff57/fffff?text=image%202" alt="City Night View 2">
            <figcaption> 밤하늘 아래의 도시는 밝게 빛나고 빛으로 가득합니다. </figcaption>
        </div>
        <div class="image-wrapper">
            <img src="https://via.placeholder.com/250x160/3357ff/fffff?text=image%203" alt="Abstract Art Works 3">
            <figcaption> 상상력으로 가득 찬 추상 예술 작품으로 생각을 자극합니다. </figcaption>
        </div>
        <div class="image-wrapper">
            <img src="https://via.placeholder.com/250x190/ff33a1/fffff?text=Image%204" alt="귀여운 작은 동물 4">
            <figcaption> Furry 새끼 고양이가 세상을 호기심으로 탐험하고 있습니다. </figcaption>
        </div>
        <div class="image-wrapper">
            <img src="https://via.placeholder.com/250x170/a133ff/ffffff?text=image%205" alt="Food Close-up 5">
            <figcaption> 음식의 매혹적인 클로즈업은 사람들을 침샘하게 만듭니다. </figcaption>
        </div>
        <div class="image-wrapper">
            <img src="https://via.placeholder.com/250x210/33fff3/fffff?text=image%206" alt="기술 제품 디스플레이 6">
            <figcaption> 절묘한 디자인과 강력한 기능을 갖춘 최신 스마트 폰. </figcaption>
        </div>
    </div>


위 내용은 HTML/CSS는 멀티 그래프 그리드 레이아웃 및 제목 정렬을 인식합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제

PHP 튜토리얼
1535
276
초보자를위한 필수 HTML 태그 초보자를위한 필수 HTML 태그 Jul 27, 2025 am 03:45 AM

HTML을 신속하게 시작하려면 웹 골격을 만들기 위해 몇 가지 기본 태그 만 마스터하면됩니다. 1. 페이지 구조는 필수적이며 루트 요소 인 메타 정보를 포함하며 컨텐츠 디스플레이 영역입니다. 2. 제목을 사용하십시오. 레벨이 높을수록 숫자가 작습니다. 레벨을 건너 뛰지 않도록 태그를 사용하여 텍스트를 분할하십시오. 3. 링크는 태그를 사용하고 HREF 속성과 일치하며 이미지는 태그를 사용하고 SRC 및 ALT 속성을 포함합니다. 4. 목록은 순서가없는 목록 및 주문 된 목록으로 나뉩니다. 각 항목은 표시되며 목록에 중첩되어야합니다. 5. 초보자는 모든 태그를 암기 할 필요가 없습니다. 글을 쓰는 동안 글을 쓰고 확인하는 것이 더 효율적입니다. 기본 웹 페이지를 만들기 위해 구조, 텍스트, 링크, 사진 및 목록을 마스터하십시오.

Shadow Dom 개념 및 HTML 통합 Shadow Dom 개념 및 HTML 통합 Jul 24, 2025 am 01:39 AM

Shadowdom은 분리 된 DOM 하위 트리를 생성하기 위해 웹 구성 요소 기술에 사용되는 기술입니다. 1. 일반적인 HTML 요소에서 독립적 인 DOM 구조의 산을 자체 스타일과 동작으로 허용하며 기본 문서에 영향을 미치지 않습니다. 2. att 3. HTML과 함께 사용하면 세 가지 주요 기능이 있습니다. 명확한 구조, 스타일 격리 및 컨텐츠 투영 (슬롯); 4. 참고에는 복잡한 디버깅, 스타일 범위 제어, 성능 오버 헤드 및 프레임 워크 호환성 문제가 포함됩니다. 요컨대, Shadowdom은 재사용 가능 및 비 폴 루팅 UI 구성 요소를 구축하기위한 기본 캡슐화 기능을 제공합니다.

입력 태그의 이름 속성은 무엇입니까? 입력 태그의 이름 속성은 무엇입니까? Jul 27, 2025 am 04:14 AM

thenameattributeinanninputtagisusedtoifordite theOntify theOntify theOndeformissubmitted; itservessasekey-valuepairsentTotheserver, wheretheuser 's sinputisthevalue.1.whenaformissubmitted, whenaforted, thenameattributeBalueBecomesThevulueInThevalueInThevalueIntheAntheAnteAnteMOmesteAnteToTeServer

다른  태그 안에  태그를 넣을 수 있습니까? 다른 태그 안에 태그를 넣을 수 있습니까? Jul 27, 2025 am 04:15 AM

sinvalidhtml; browsersautomicallycloseThefirstbeOptenTenext, rentingInseparateParAgraphs.linlineElements, orforstylingwithinaparagraph, orforstylingwithinaparagraph, 또는 BlockContainers Orblockcontainers Orblockcontainers

HTML에 PDF 문서를 포함시키는 방법은 무엇입니까? HTML에 PDF 문서를 포함시키는 방법은 무엇입니까? Aug 01, 2025 am 06:52 AM

태그를 사용하는 것이 가장 쉽고 권장되는 방법입니다. 구문은 최신 브라우저가 PDF를 직접 포함시키는 데 적합합니다. 2. 태그를 사용하면 더 나은 제어 및 백업 컨텐츠 지원을 제공 할 수 있으며 구문은 지원되지 않을 때 백업 솔루션으로 태그의 다운로드 링크를 제공 할 수 있습니다. 3. Google Docsviewer를 통해 내장 할 수 있지만 개인 정보 및 성능 문제로 인해 널리 사용하는 것이 좋습니다. 4. 사용자 경험을 향상시키기 위해서는 적절한 높이를 설정해야하며 응답 크기 (예 : 높이 : 80VH) 및 PDF 다운로드 링크를 제공하여 사용자가 스스로 다운로드하여 볼 수 있도록해야합니다.

HTML`스타일 '태그 : 인라인 대 내부 CSS HTML`스타일 '태그 : 인라인 대 내부 CSS Jul 26, 2025 am 07:23 AM

스타일 배치 방법은 장면에 따라 선택해야합니다. 1. 인라인은 단일 요소 또는 동적 JS 제어의 임시 수정에 적합합니다. 2. 내부 CSS는 페이지가 적고 간단한 구조가있는 프로젝트에 적합하며, 이는 로그인 페이지의 기본 스타일 설정과 같은 스타일의 중앙 집중식 관리에 편리합니다. 3. 재사용, 유지 보수 및 성능에 우선 순위가 부여되며 대규모 프로젝트를 위해 외부 링크 CSS 파일을 분할하는 것이 좋습니다.

Contentestable 속성을 사용하는 방법은 무엇입니까? Contentestable 속성을 사용하는 방법은 무엇입니까? Jul 28, 2025 am 02:24 AM

thecontentEditableAttributeMakesanyHtMlEmentEdivideTibledingContEntEditable = "true", intuusStrodifictlyContentInTheBrowser.2.itiscommonLyusedInrichTexTedItors, note-taking-interfaces, supportElementSlikediv

html에서 변정되지 않은 목록을 만드는 방법은 무엇입니까? html에서 변정되지 않은 목록을 만드는 방법은 무엇입니까? Jul 30, 2025 am 04:50 AM

HTML이 변절되지 않은 목록을 만들려면 목록 컨테이너를 정의하기 위해 태그를 사용해야합니다. 각 목록 항목은 태그로 포장되며 브라우저에는 총알이 자동으로 추가됩니다. 1. 태그로 목록을 만듭니다. 2. 각 목록 항목은 태그로 정의됩니다. 3. 브라우저는 기본 점 기호를 자동으로 생성합니다. 4. 하위 목록을 중첩을 통해 구현할 수 있습니다. 5. CSS의 목록 스타일 유형 속성을 사용하여 디스크, 원, 사각형 또는 없음과 같은 심볼 스타일을 수정하십시오. 이 태그를 올바르게 사용하여 표준 비 순응 목록을 생성하십시오.

See all articles