답변:
white-space:pre
적절한에 적용된 CSS를 사용하려고합니다 <td>
. 예를 들어 모든 테이블 셀에이 작업을 수행하려면 다음을 수행하십시오.
td { white-space:pre }
또는 마크 업을 변경할 수있는 경우 <pre>
콘텐츠 주위 에 태그를 사용할 수 있습니다 . 기본적으로 웹 브라우저는 사용자 에이전트 스타일 시트를 사용 white-space:pre
하여이 요소에 동일한 규칙을 적용합니다 .
PRE 요소는 포함 된 텍스트가 "사전 형식화"되었음을 시각적 사용자 에이전트에 알립니다. 미리 서식이 지정된 텍스트를 처리 할 때 시각적 사용자 에이전트 :
- 공백을 그대로 둘 수 있습니다.
- 고정 피치 글꼴로 텍스트를 렌더링 할 수 있습니다.
- 자동 줄 바꿈을 비활성화 할 수 있습니다.
- 양방향 처리를 비활성화하면 안됩니다.
white-space: pre;
적용될 때 무시되는 상황에 있습니다 <td>
. <pre></pre>
내용을 래핑하는 데 사용하면 잘 작동하지만이 테이블 (Excel로 내보내기)을 사용하기 때문에 많은 수의 열과 행이 내 보낸 파일의 크기를 늘리고 파일을 읽을 때 Excel이 중단됩니다. (이상한, 알아). 다른 사람이 이것을 보거나 해결책에 대한 아이디어가 있습니까?
style="white-space:pre-wrap; word-wrap:break-word"
이것은 새로운 라인의 문제를 해결할 것입니다. 사전 태그는 필요한 것보다 추가 CSS를 추가합니다.
<pre>
태그는 허용 개행 문자를 넘어 모든 종류의 것들을 않지만, 이러한 스타일의 설정은 문제가 제시 해결한다.
이 문제를 해결하기위한 두 가지 제안 :
해결 방법 1 : <div style="white-space:pre;">{database text}</div>
또는<pre>{database text}</pre>
텍스트에 html 태그 나 CSS 속성이없는 경우 좋은 솔루션입니다. 예를 들어 탭을 유지할 수도 있습니다.
해결 방법 2 : 바꾸기 \n
로<p></p> or <br/>
이것은 다른 텍스트 속성이나 서식을 잃지 않고 브레이크 라인을 추가하려는 경우에 유용합니다. PHP의 예는 다음과 같습니다.$text = str_replace("\n","<br />",$database_text);
당신은 또한 사용할 수 있습니다 <p></p>
또는 <div></div>
, 그러나 이것은 조금 더 텍스트 구문 분석이 필요합니다.
안녕하세요 저도 똑같은 일을해야했습니다! 이유를 묻지 말고 파이썬을 사용하여 html을 생성하고 목록의 항목을 반복하고 각 항목이 테이블의 단일 셀 내에서 자체 행을 차지하도록하는 방법이 필요했습니다.
br 태그가 잘 작동한다는 것을 알았습니다. 예를 들면 :
<!DOCTYPE html>
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<TABLE>
<TR>
<TD>
item 1 <BR>
item 2 <BR>
item 3 <BR>
item 4 <BR>
</TD>
</TR>
</TABLE>
</BODY>
이것은 내가 원하는 출력을 생성합니다.
각 줄 다음에 html 코드 태그를 사용하고 (아래 참조) 저에게 효과적입니다.
George Benson </br>
123 Main Street </br>
New York, Ny 12344 </br>
white-space
은 널리 지원되는 CSS 2.1 속성입니다. IE8에서 테스트되었으며 훌륭하게 작동합니다.