GitHub Pages Jekyll Liquid에서 for 반복문에 의해 img 테그가 깨지는 현상
How to workaround image tag escape problem.
GitHub Pages를 이용해서 본 웹페이지를 운영하고 있다.
Jekyll은 내부적으로 Liquid 문법을 이용하고 있다.
for 반복문과 img 테그를 조합해서 미리 보기 기능을 구현했다.
이유는 알 수 없지만 img 테그가 깨지는 문제가 발생했다.
이 문제점에 대해서 근본 원인은 알 수 없지만, workaround는 있다.
문제 내용 설명
아래는 최근 포스트 5개의 이미지를 보여준다.
코드
{%- for post in site.posts limit:5 %}
{%- if post.image %}
<img style="border-radius: 20px;" src="{{ post.image }}"><br />
{% endif %}
{% endfor %}
또 다른 코드
<a href="/r/2024/09/21/r-install.html"><img style="border-radius: 20px;" src="/assets/images/r/logo.png"></a><br />
<a href="/diary/2024/08/14/%EC%99%80%EC%9D%B4%ED%94%84%EB%8B%98-%EC%9E%90%EC%A0%84%EA%B1%B0-%EC%82%AC%EA%B3%A0-%EB%B0%8F-%ED%8C%8C%EC%86%90.html"><img style="border-radius: 20px;" src="/assets/images/diary/2024/08/2024-08-14-와이프님-자전거-사고-및-파손.JPG"></a><br />
<a href="/diary/2024/08/13/%EB%A9%80%ED%8B%B0%EC%BA%A0%ED%8D%BC%EC%8A%A4-HRD-Flex.html"><img style="border-radius: 20px;" src="/assets/images/diary/2024/08/2024-08-13-multicampus-hrd-flex-leonardo.png"></a><br />
<a href="/pocketmongo/2024/08/02/pocketmongo.html"><img style="border-radius: 20px;" src="/assets/logo.png"></a><br />
<a href="/diary/2024/05/13/30%EB%B6%84-%EB%8B%A8%EC%9C%84-%EC%8B%9C%EA%B0%84%EA%B4%80%EB%A6%AC.html"><img style="border-radius: 20px;" src="/assets/images/diary/logo.png"></a><br />
실행 결과
<img style="border-radius: 20px;" src="/assets/images/r/logo.png"><br />
<img style="border-radius: 20px;" src="/assets/images/diary/2024/08/2024-08-14-와이프님-자전거-사고-및-파손.JPG"><br />
<img style="border-radius: 20px;" src="/assets/images/diary/2024/08/2024-08-13-multicampus-hrd-flex-leonardo.png"><br />
<img style="border-radius: 20px;" src="/assets/logo.png"><br />
<img style="border-radius: 20px;" src="/assets/images/diary/logo.png"><br />
실제로 생성되는 html 코드를 보면 <img>
부분이 %ltmg>
로 깨진 것을 확인할 수 있다.
근본 해결 방법
이 문제의 근본 원인은 아직 모른다.
하지만 workaround 방법은 존재한다.
임시 조치 방법
<img>
테그에 <figure>
테그를 씌우면 테그가 깨지는 문제를 회피할 수 있다.
{%- for post in site.posts limit:5 %}
{%- if post.image %}
<figure><img style="border-radius: 20px;" src="{{ post.image }}"></figure><br />
{% endif %}
{% endfor %}
요약
만약 Jekyll에서 img 테그가 깨지는 문제가 발생한다면,
firure 테그를 img 테그에 씌우면 해결된다.
페이지 정보
구분
내용
제목
GitHub Pages Jekyll Liquid에서 for 반복문에 의해 img 테그가 깨지는 현상
요약
How to workaround image tag escape problem.
카테고리
github-pages
저자
boyinblue
디렉토리
파일명
경로
_posts/github-pages/2022-11-09-img-tag-broken-workaround-with-figure-tag.md
URL
/github-pages/2022/11/09/img-tag-broken-workaround-with-figure-tag.html
Image
/assets/images/github-pages/logo.png
github-pages 카테고리 (23)
Github Pages에 giscus 연동하는 방법
How to embed discussion on the GitHub pages.
(2022-11-14 작성)
555 단어 1 분 소요 분량
GitHub Pages에 방문자수 카운터 표시하는 방법 (feat. hits.sh)
깃허브 페이지스 블로그에 방문자수 카운터 표시하는 방법
(2022-11-04 작성)
644 단어 2 분 소요 분량
GitHub Pages 포스트 읽는데 걸리는 시간 표시하는 방법
깃허브 페이지에서 단어수를 체크해서 글을 읽는데 필요한 예상 시간 계산 방법
(2022-11-02 작성)
156 단어 0 분 소요 분량
GitHub Pages로 작성한 특정 포스트가 누락되어 발행되는 이유
깃허브 페이지로 작성한 글이 디플로이 되지 못하는 경우 해결 방법
(2022-11-01 작성)
235 단어 0 분 소요 분량
GitHub Pages Jekyll Liquid 문법 정리
GitHub Pages Jekyll Liquid 문법 정리
(2022-10-28 작성)
190 단어 0 분 소요 분량
jekyll-paginate 플러그인을 사용해서 페이지 나누기
GitHub Pages에서 페이지를 나누는 방법 설명
(2022-10-28 작성)
492 단어 1 분 소요 분량
트위터 카드 검증 사이트에서 Unable to render Card preview 에러 발생
Twitter Card Validator에서 GitHub Pages 글 검증시에 Unable to render Card preview 에러가 발생하는 문제
(2022-10-26 작성)
334 단어 1 분 소요 분량
깃허브 블로그 실패 사례
GitHub Pages로 6개월동안 삽질하고 깨닫게 된 것들
(2022-10-17 작성)
468 단어 1 분 소요 분량
구글 애드센스 ads.txt 문제 해결 방법
구글 애드센스에서 ads.txt 파일에 문제가 있을 경우 조치 방법
(2022-04-15 작성)
268 단어 0 분 소요 분량
GitHub Pages deploy 시에 400 에러나 502 에러가 발생할 경우 조치 방법
GitHub Pages로 새로운 변경점을 반영하려고 할 때 400 에러나 502 에러가 발생할 경우 조치하는 방법입니다.
(2022-03-29 작성)
364 단어 1 분 소요 분량
GitHub Pages에서 css 파일 위치
GitHub Pages에서 css를 변경하고자 할 때 편집해야하는 css 파일 위치에 대해서 설명합니다.
(2022-03-27 작성)
399 단어 1 분 소요 분량
GitHub Pages 빌드 에러 Error No uploaded artifact was found. Please check if there are any errors at build step.
GitHub Pages에서 빌드 에러가 발생시에 조치하는 방법에 대해서 설명합니다.
(2022-03-23 작성)
243 단어 0 분 소요 분량
mapping values are not allwed in this context at line 2 column 33 해결 방법
GitHub Pages의 md 파일 상단에 YAML 형식의 헤더를 추가했을 때 발생하는 mapping values are not allwed in this context at line 2 column 33에러를 조치하는 방법에 대해서 설명한다.
(2022-03-23 작성)
321 단어 1 분 소요 분량
GitHub Pages 운영시의 꿀팁들
GitHub Pages를 운영하면서 체득한 유용한 팁들을 제공합니다.
(2022-03-22 작성)
352 단어 1 분 소요 분량
SEO를 위해 GitHub Pages 의 md 파일에 헤더를 입력하는 방법
GitHub Pages의 markdown 파일의 헤더에 title, description을 지정하는 방법에 대해서 설명합니다.
(2022-03-22 작성)
152 단어 0 분 소요 분량
GitHub Pages 사이트맵을 자동으로 생성해주는 bash 스크립트
사이트맵을 자동으로 생성하는 bash 스크립트 예제를 제공합니다.
(2022-03-09 작성)
800 단어 2 분 소요 분량
GitHub Pages에서 php 문법을 사용 가능할까?
GitHub Pages에서 php 문법 사용 가능 여부에 대해서 설명합니다.
(2022-03-08 작성)
405 단어 1 분 소요 분량
GitHub Pages를 다음 검색 엔진에 등록 신청하는 방법
다음 검색 엔진에 GitHub Pages를 등록 신청하는 방법을 설명합니다.
(2022-03-08 작성)
335 단어 1 분 소요 분량
GitHub 블로그를 네이버 서치 어드바이저에 등록 방법 (네이버 웹마스터 도구에 사이트 추가 방법)
네이버 서치 어드바이저에 GitHub 블로그 등록 방법에 대해서 설명합니다.
(2022-03-07 작성)
323 단어 1 분 소요 분량
GitHub Pages에 구글 서치 콘솔 등록 방법 아주 쉽다 (사이트 소유권 확인 방법)
GitHub 블로그에 구글 서치 콘솔을 등록하는 방법에 대해서 설명합니다.
(2022-03-07 작성)
427 단어 1 분 소요 분량
GitHub 블로그에 구글 애드센스 스크립트 삽입하는 방법 및 삽입 위치
GitHub Pages에 구글 애드센스 스크립트를 삽입하는 위치를 설명합니다.
(2022-03-07 작성)
351 단어 1 분 소요 분량
무료 도메인 네임 및 무료 웹서버 추천 (GitHub 블로그 개설 방법 및 장점)
무료 웹서버로 활용할 수 있는 GitHub 블로그(GitHub Pages)를 소개합니다.
(2022-03-06 작성)
570 단어 1 분 소요 분량
블로그 글 더보기
R 언어 설치 및 개발 환경 설정 방법
RGui와 R 스튜디오 설치
(2024-09-21 작성)
121 단어 0 분 소요 분량
와이프 자전거 사고로 인한 뒷바퀴 파손
2024년 8월 14일 (화요일) 일기
(2024-08-14 작성)
237 단어 0 분 소요 분량
멀티캠퍼스 HRD Flex 교육 인사이트
2024년 8월 13일 (화요일) 일기
(2024-08-13 작성)
262 단어 0 분 소요 분량
현재 즐기고 있는 포켓몬고 게임 현황
정화 포켓몬 현황
(2024-08-02 작성)
626 단어 2 분 소요 분량
30분 단위 시간 관리 시작
2024년 5월 11일 (월요일) 일기
(2024-05-13 작성)
34 단어 0 분 소요 분량