CSS에서 공백을 처리하는 방법(예)

不言
풀어 주다: 2018-08-06 17:18:31
원래의
1849명이 탐색했습니다.

이 글의 내용은 CSS에서 공백을 처리하는 방법(예제)에 대한 내용입니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

<p>1. 공백 규칙

<p>HTML 코드의 공백은 일반적으로 브라우저에서 무시됩니다.

<p>

<p>◡◡hello◡◡world◡◡</p>
로그인 후 복사
<p>위는 HTML 코드 줄로, 텍스트 앞, 안쪽, 뒤에 공백이 각각 두 개씩 있습니다. 식별을 용이하게 하기 위해 여기서는 공백을 나타내는 데 반원 기호 를 사용했습니다. 表示空格。

<p>浏览器的输出结果如下。

hello world
로그인 후 복사
로그인 후 복사
<p>可以看到,文字的前部和后部的空格都会忽略,内部的连续空格只会算作一个。这就是浏览器处理空格的基本规则。

<p>如果希望空格原样输出,可以使用<pre class="brush:php;toolbar:false">&lt;/code&gt;标签。&lt;/p&gt;&lt;div class=&quot;code&quot; style=&quot;position:relative; padding:0px; margin:0px;&quot;&gt;&lt;pre class=&quot;brush:html;toolbar:false&quot;&gt;&lt;pre class=&quot;brush:php;toolbar:false&quot;&gt;◡◡hello◡◡world◡◡</pre></pre><div class="contentsignin">로그인 후 복사</div></div><p>另一种方法是,改用 HTML 实体<code> 表示空格。

<p>  hello  world  </p>
로그인 후 복사
<p>二、空格字符

<p>HTML 处理空格的规则,适用于多种字符。除了普通的空格键,还包括制表符(t)和换行符(rn)。

<p>浏览器会自动把这些符号转成普通的空格键。

<p>hello
world</p>
로그인 후 복사
<p>上面代码中,文本内部包含了一个换行符,浏览器视同为空格,输出结果如下。

hello world
로그인 후 복사
로그인 후 복사
<p>所以,文本内部的换行是无效的(除非文本放在<pre class="brush:php;toolbar:false">&lt;/code&gt;标签内)。&lt;/p&gt;&lt;div class=&quot;code&quot; style=&quot;position:relative; padding:0px; margin:0px;&quot;&gt;&lt;pre class=&quot;brush:html;toolbar:false&quot;&gt;&lt;p&gt;hello&lt;br&gt;world&lt;/p&gt;</pre><div class="contentsignin">로그인 후 복사</div></div><p>上面代码使用<code><br>标签显式表示换行。

<p>三、CSS 的 white-space 属性

<p>HTML 语言的空格处理,基本上就是直接过滤。这样的处理过于粗糙,完全忽视了原始文本内部的空格可能是有意义的。

<p>CSS 提供了一个white-space属性,可以提供更精确一点的空格处理方式。该属性共有六个值,除了一个通用的inherit(继承父元素),下面依次介绍剩下的五个值。

3.1 white-space: normal

<p>white-space属性的默认值为normal,表示浏览器以正常方式处理空格。

<p>◡◡hellohellohello◡hello
world
</p>
로그인 후 복사
<p>上面代码中,文本前部有两个空格,内部有一个长单词和一个换行符。

<p>然后,容器<p>指定一个比较小的宽度。为了便于识别,背景色设为红色。

p {
  width: 100px;
  background: red;
}
로그인 후 복사
<p>显示效果如下图。

<p>

<p>可以看到,文首的空格被忽略。由于容器太窄,第一个单词溢出容器,然后在后面一个空格处换行。文本内部的换行符自动转成了空格。

3.2 white-space: nowrap

<p>white-space属性为nowrap时,不会因为超出容器宽度而发生换行。

p {
  white-space: nowrap;
}
로그인 후 복사
<p>显示效果如下图。

<p>

<p>所有文本显示为一行,不会换行。

3.3 white-space: pre

<p>white-space属性为pre时,就按照
</code>标签的方式处理。</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:html;toolbar:false">p {
  white-space: pre;
}
로그인 후 복사
<p>显示效果如下图。

<p>

<p>上面结果与原始文本完全一致,所有空格和换行符都保留了。

3.4 white-space: pre-wrap

<p>white-space属性为pre-wrap时,基本还是按照
</code>标签的方式处理,唯一区别是超出容器宽度时,会发生换行。</p><div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:html;toolbar:false">p {
  white-space: pre-wrap;
}
로그인 후 복사
<p>显示效果如下图。

<p>

<p>文首的空格、内部的空格和换行符都保留了,超出容器的地方发生了折行。

3.5 white-space: pre-line

<p>white-space属性为pre-line时,意为保留换行符。除了换行符会原样输出,其他都与white-space:normal规则一致。

p {
  white-space: pre-line;
}
로그인 후 복사
<p>显示效果如下图。

<p>

<p>除了文本内部的换行符没有转成空格,其他都与normal

브라우저 출력은 다음과 같습니다. <p>rrreee

텍스트 앞뒤의 공백은 무시되고, 그 안에 연속된 공백만 1개로 계산되는 것을 볼 수 있습니다. 이는 브라우저가 공백을 처리하는 기본 규칙입니다. <p>공백을 그대로 출력하고 싶다면 <pre class="brush:php;toolbar:false">&lt;/code&gt; 태그를 사용하시면 됩니다. &lt;/a&gt;rrreee&lt;/p&gt;대안은 HTML 엔터티 &lt;code&gt; &lt;/code&gt;를 사용하여 공백을 나타내는 것입니다. 🎜rrreee🎜🎜 2. 공백 문자 🎜🎜🎜HTML의 공백 처리 규칙은 다양한 문자에 적용됩니다. 일반 스페이스바 외에도 탭 문자(&lt;code&gt;t&lt;/code&gt;)와 개행 문자(&lt;code&gt;r&lt;/code&gt; 및 &lt;code&gt;n&lt;/code&gt;)도 포함됩니다. 🎜🎜브라우저는 자동으로 이러한 기호를 일반 스페이스 키로 변환합니다. 🎜rrreee🎜위 코드에서 텍스트에는 개행 문자가 포함되어 있는데, 이는 브라우저에서 공백으로 간주됩니다. 🎜rrreee🎜따라서 텍스트 내의 줄 바꿈은 유효하지 않습니다(텍스트가 &lt;code&gt;&lt;pre class=&quot;brush:php;toolbar:false&quot;&gt;&lt;/code&gt; 태그 내에 배치되지 않는 한). 🎜rrreee🎜위 코드는 &lt;code&gt;&lt;br&gt;&lt;/code&gt; 태그를 사용하여 줄 바꿈을 명시적으로 나타냅니다. 🎜🎜🎜3. CSS의 공백 속성 🎜🎜🎜HTML 언어의 공백 처리는 기본적으로 직접 필터링입니다. 이러한 처리는 너무 조잡하며 원본 텍스트 내부의 공백이 의미가 있을 수 있다는 사실을 완전히 무시합니다. 🎜🎜CSS는 공백을 처리하는 보다 정확한 방법을 제공할 수 있는 &lt;code&gt;white-space&lt;/code&gt; 속성을 ​​제공합니다. 이 속성에는 총 6개의 값이 있습니다. 일반적인 &lt;code&gt;inherit&lt;/code&gt;(상위 요소 상속) 외에 나머지 5개의 값은 아래에 소개되어 있습니다. 🎜&lt;h3&gt;3.1 공백: 일반&lt;/h3&gt;🎜 &lt;code&gt;white-space&lt;/code&gt; 속성의 기본값은 &lt;code&gt;normal&lt;/code&gt;입니다. 이는 브라우저가 공백을 처리한다는 의미입니다. 정상적인 방법. 🎜rrreee🎜위 코드에는 텍스트 앞에 공백 두 개가 있고 그 안에 긴 단어와 개행 문자가 있습니다. 🎜🎜그런 다음 컨테이너 &lt;code&gt;&lt;p&gt;&lt;/code&gt;는 더 작은 너비를 지정합니다. 쉽게 식별할 수 있도록 배경색을 빨간색으로 설정했습니다. 🎜rrreee🎜디스플레이 효과는 아래와 같습니다. 🎜🎜&lt;img alt=&quot;&quot; class=&quot;has&quot; src=&quot;https://img.php.cn/upload/article/000/000/009/d39f514b71a62088390fc7ba4dd36012-1.png&quot;&gt;🎜🎜보시다시피, 선행 공백은 무시됩니다. 컨테이너가 너무 좁기 때문에 첫 번째 단어가 컨테이너를 넘치고 그 뒤에 공백 하나를 줄입니다. 텍스트 내의 줄 바꿈은 자동으로 공백으로 변환됩니다. 🎜&lt;h3&gt;3.2 공백: nowrap&lt;/h3&gt;🎜 &lt;code&gt;white-space&lt;/code&gt; 속성이 &lt;code&gt;nowrap&lt;/code&gt;인 경우 컨테이너 너비 초과로 인해 줄 바꿈이 발생하지 않습니다. 🎜rrreee🎜디스플레이 효과는 아래와 같습니다. 🎜🎜&lt;img alt=&quot;&quot; class=&quot;has&quot; src=&quot;https://img.php.cn/upload/article/000/000/009/dcf76109db1addcad243bdb295a1c3f5-2.png&quot;&gt;🎜🎜모든 텍스트가 표시됩니다 한 줄로 줄 바꿈이 없습니다. 🎜&lt;h3&gt;3.3 공백: pre&lt;/h3&gt;🎜 &lt;code&gt;white-space&lt;/code&gt; 속성이 &lt;code&gt;pre&lt;/code&gt;인 경우 &lt;code&gt;&lt;div class=&quot;code&quot; style=&quot;position:relative; padding:0px; margin:0px;&quot;&gt;&lt;pre class=&quot;brush:php;toolbar:false&quot;&gt;</pre><div class="contentsignin">로그인 후 복사</div></div>를 따릅니다. 라벨 처리. 🎜rrreee🎜디스플레이 효과는 아래와 같습니다. 🎜🎜🎜🎜위 결과는 원본과 동일 텍스트는 정확히 동일하며 모든 공백과 줄 바꿈이 유지됩니다. 🎜

3.4 공백: 사전 포장

🎜 white-space 속성이 사전 포장인 경우 기본적으로 < pre> 태그의 유일한 차이점은 컨테이너 너비를 초과하면 줄 바꿈이 발생한다는 것입니다. 🎜rrreee🎜디스플레이 효과는 아래와 같습니다. 🎜🎜🎜🎜처음에 공백 기사의 내부 공백과 개행 문자는 유지되며 컨테이너 너머에서는 줄 바꿈이 발생합니다. 🎜

3.5 공백: pre-line

🎜 white-space 속성이 pre-line인 경우 개행 문자를 유지한다는 의미입니다. 그대로 출력되는 개행 문자를 제외하고 다른 모든 항목은 white-space:normal 규칙을 따릅니다. 🎜rrreee🎜디스플레이 효과는 아래와 같습니다. 🎜🎜🎜🎜이 외에도 개행 문자 안의 텍스트는 공백으로 변환되지 않으며 다른 처리 규칙은 일반과 일치합니다. 이는 시 형식의 텍스트에 유용합니다. 🎜🎜추천 관련 글: 🎜🎜🎜div 태그: 가로 센터링 및 세로 센터링 구현(코드 포함) 🎜🎜<p>
CSS의 text-transform 속성을 사용하여 문자열 변환을 구현하는 코드

위 내용은 CSS에서 공백을 처리하는 방법(예)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿