Laravel blade에서 빈틈을 고려한 줄 바꿈과 공백 표시

2693 단어 Laravelblade
https://twitter.com/mpyw/status/1224923891924996099
@mpyw 선생님께 배운 것을 적어 두세요.

결론



> 인위적인 오류로 인한 XSS 빈틈
・ 줄 바꿀때 CSS로 pre-wrap
・ HTML을 직접 출력할 때 HTMLString 클래스 사용
기본적으로 {!!!사용 금지
/메일 템플릿 이외의 용도 없음
・ HTMLString을 만들 때 속성 값과 텍스트는 반드시 e 함수로 의미를 바꾸어야 한다
예:PHP에 중첩된 연상 그룹을 그룹으로 조립

겸사겸사 말씀드리다

{!! nl2br(e($hoge)) !!}
상술한 작법도 전의적으로 처리하지만 줄바꿈만 반영한다.
줄 바꿈과 공백을 반영하려면 다음과 같이 CSS로 pre-wrap을 합니다.
<div style="white-space:pre-wrap;">{{$message}}</div>

[주의]

<div>
  foo
</div>
아니다

<div>foo</div>

이렇게 척!

참고 문헌


이 글은 아래의 정보를 참고하였다.
  • [CSS] 스타일 시트에 줄 바꿈이 포함된 텍스트를 표시합니까?
  • https://twitter.com/mpyw/status/1224923891924996099

  • @mpyw
  • 좋은 웹페이지 즐겨찾기