[html] 탭 문자를 얻는 방법?

HTML에는 탭에 대한 문자가 없지만 여기에 문자를 복사하여 붙여 넣을 수있는 이유가 혼란 스럽습니다.. (전체 너비는 볼 수 없지만 질문을 편집하기 위해 클릭하면 문자가 표시됩니다.) 탭 문자를 복사하여 붙여 넣을 수 있으면 html로 코딩 할 수있는 유니 코드에 해당하는 코드가 있어야합니다. . 나는 그것이 존재하지 않는다는 것을 알고 있지만 이것은 내가 결코 파악할 수 없었던 수수께끼입니다.

그래서 내 질문은 : 복사하여 붙여 넣을 수 있어도 탭에 유니 코드 문자가없는 이유는 무엇입니까?



답변

물론 탭에 대한 엔터티가 있습니다.

	

(탭은 ASCII 문자 9 또는 유니 코드 U + 0009입니다.)

그러나 리터럴 탭 (텍스트 편집기에 입력 하는 탭 )과 마찬가지로 모든 탭 문자는 HTML 파서에 의해 공백으로 처리되고<pre> 블록 내의 문자를 제외하고 단일 공백으로 축소됩니다. 여기서 리터럴 탭은 8 개의 공백 으로 렌더링됩니다 . 고정 폭 글꼴.


답변

시험 &emsp;

문서에 따라 :

문자 엔티티 &ensp;&emsp;는 각각 en 공백과 em 공백을 나타냅니다. 여기서 en 공백은 포인트 크기의 절반이고 em 공백은 현재 글꼴의 포인트 크기와 같습니다. 고정 피치 글꼴의 경우 사용자 에이전트는 en 공백을 A 공백 문자에 해당하는 것으로 처리하고 em 공백을 두 개의 공백 문자에 해당하는 것으로 처리 할 수 ​​있습니다.

문서 링크 : https://www.w3.org/MarkUp/html3/specialchars.html


답변

<pre></pre>태그 사이에 넣은 다음이 문자를 사용하십시오.&#9;

<pre></pre>태그 없이는 작동하지 않습니다.


답변

더 완벽하게 다른 대안을 게시합니다. “사전”기반 답변을 시도했을 때 추가 세로 줄 바꿈도 추가되었습니다.

각 탭은 줄 바꿈이 필요없는 연속적인 비 분리 공백으로 변환 할 수 있습니다.

"&nbsp;&nbsp;&nbsp;&nbsp;" 

페이지 내에서 반복 / 광범위하게 사용하는 것은 권장되지 않습니다. div 여백 / 패딩 접근 방식은 훨씬 깔끔해 보입니다.


답변

내가 사용하는 <span style="display: inline-block; width: 2ch;">&#9;</span>두 개의 문자 폭 탭의.


답변

탭은 유니 코드 라이브러리에서 [HT] 또는 문자 번호 9입니다.


답변

언급했듯이 효율성을 위해 순차 공간은 브라우저가 실제로 표시하는 하나의 공간으로 통합됩니다. HTML의 ML이 무엇을 의미하는지 기억하십시오. 텍스트가 표시되는 방식을 제어하도록 설계된 마크 업 언어입니다. 공백이 아닙니다. : p

그래도 브라우저가 탭을 존중하는 척 할 수 있습니다. 모든 TAB의 앞에 공백이 4 개 추가되고 CSS를 사용하면 쉽습니다. 같은 줄에 …

 <div style="padding-left:4.00em;">Indenented text </div>

또는 스타일 시트의 일반 클래스로

.tabbed {padding-left:4.00em;}

그러면 HTML이 다음과 같이 보일 수 있습니다.

<p>regular paragraph regular paragraph regular paragraph</p>
<p class="tabbed">Indented text Indented text Indented text</p>
<p>regular paragraph regular paragraph regular paragraph</p>