CSS-текстовые эффекты


Оглавление

    Показать оглавление


Текст CSS Переполнение, перенос слов, разрыв строки Правила и режимы написания

В этой главе вы узнаете о следующих свойствах:

text-overflow
word-wrap
word-break
writing-mode

Переполнение текста CSS

Свойство CSS text-overflow определяет, насколько переполнен контент, который не является отображаемое значение должно быть сообщено пользователю.

Его можно обрезать:

This is some long text that will not fit in the box

или его можно представить в виде многоточия (...):

This is some long text that will not fit in the box

CSS-код выглядит следующим образом:

Пример

 p.test1 {
  
white-space: nowrap; 
  width: 200px; 
  border: 1px solid #000000;
    
overflow: hidden;
  
text-overflow: clip; 
}
p.test2 {
  white-space: nowrap; 
  width: 200px; 
  border: 1px solid #000000;
    
overflow: hidden;
  
text-overflow: ellipsis; 
}

Попробуйте сами →

<!DOCTYPE html>
<html>
<head>
<style> 
p.test1 {
  white-space: nowrap; 
  width: 200px; 
  border: 1px solid #000000;
  overflow: hidden;
  text-overflow: clip;
}

p.test2 {
  white-space: nowrap; 
  width: 200px; 
  border: 1px solid #000000;
  overflow: hidden;
  text-overflow: ellipsis;
}
</style>
</head>
<body>

<h1>The text-overflow Property</h1>
<p>The following two paragraphs contains a long text that will not fit in the box.</p>

<h2>text-overflow: clip:</h2>
<p class="test1">This is some long text that will not fit in the box</p>

<h2>text-overflow: ellipsis:</h2>
<p class="test2">This is some long text that will not fit in the box</p>

</body>
</html>


В следующем примере показано, как можно отобразить переполненное содержимое при наведении курсора на элемент:

Пример

  div.test:hover {
  overflow: visible;
}

Попробуйте сами →

<!DOCTYPE html>
<html>
<head>
<style> 
div.test {
  white-space: nowrap; 
  width: 200px; 
  overflow: hidden; 
  border: 1px solid #000000;
}

div.test:hover {
  overflow: visible;
}
</style>
</head>
<body>

<p>Hover over the two divs below, to see the entire text.</p>
<div class="test" style="text-overflow:ellipsis;">This is some long text that will not fit in the box</div>
<br>
<div class="test" style="text-overflow:clip;">This is some long text that will not fit in the box</div>

</body>
</html>




CSS-перенос слов

Свойство CSS word-wrap позволяет разбивать длинные слова и переносить их на следующую строку.

Если слово слишком длинное и не помещается в определенной области, оно расширяется за пределы:

This paragraph contains a very long word: thisisaveryveryveryveryveryverylongword. The long word will break and wrap to the next line.

Свойство word-wrap позволяет принудительно переносить текст, даже если это означает разделение его по середине слова:

This paragraph contains a very long word: thisisaveryveryveryveryveryverylongword. The long word will break and wrap to the next line.

CSS-код выглядит следующим образом:

Пример

Разрешите разбивать длинные слова и переносить их на следующую строку:

  p {
  word-wrap: break-word;
}

Попробуйте сами →

<!DOCTYPE html>
<html>
<head>
<style> 
p.test {
  width: 11em; 
  border: 1px solid #000000;
  word-wrap: break-word;
}
</style>
</head>
<body>

<h1>The word-wrap Property</h1>

<p class="test">This paragraph contains a very long word: thisisaveryveryveryveryveryverylongword. The long word will break and wrap to the next line.</p>

</body>
</html>



Разбиение слов CSS

Свойство CSS word-break определяет правила разрыва строк.

This paragraph contains some text. This line will-break-at-hyphens.

This paragraph contains some text. The lines will break at any character.

CSS-код выглядит следующим образом:

Пример

  p.test1 {
  word-break: 
keep-all;
}
p.test2 {
  word-break: 
break-all;
}

Попробуйте сами →

<!DOCTYPE html>
<html>
<head>
<style> 
p.test1 {
  width: 140px; 
  border: 1px solid #000000;
  word-break: keep-all;
}

p.test2 {
  width: 140px; 
  border: 1px solid #000000;
  word-break: break-all;
}
</style>
</head>
<body>

<h1>The word-break Property</h1>

<p class="test1">This paragraph contains some text. This line will-break-at-hyphens.</p>

<p class="test2">This paragraph contains some text. The lines will break at any character.</p>

</body>
</html>



Режим написания CSS

Свойство CSS writing-mode определяет расположены ли строки текста горизонтально или вертикально.

Некоторый текст с элементом span с режимом записи по вертикали.

Some text with a span element with a vertical-rl writing-mode.

В следующем примере показаны некоторые различные режимы записи:

Пример

  p.test1 {
  writing-mode: horizontal-tb; 
}
span.test2 {
  writing-mode: vertical-rl; 
}
p.test2 {
  writing-mode: 
   vertical-rl; 
} 

Попробуйте сами →

<!DOCTYPE html>
<html>
<head>
<style> 
p.test1 {
  writing-mode: horizontal-tb; 
}

span.test2 {
  writing-mode: vertical-rl; 
}

p.test2 {
  writing-mode: vertical-rl; 
}
</style>
</head>
<body>
<h1>The writing-mode Property</h1>

<p class="test1">Some text with default writing-mode.</p>

<p>Some text with a span element with a <span class="test2">vertical-rl</span> writing-mode.</p>

<p class="test2">Some text with writing-mode: vertical-rl.</p>

</body>
</html>




Свойства текстового эффекта CSS

В следующей таблице перечислены свойства текстовых эффектов CSS:

text-justify

Указывает, как выровненный текст должен быть выровнен и расположен.

text-overflow

Указывает, как пользователю следует сообщать о переполненном содержимом, которое не отображается.

word-break

Определяет правила разрыва строк для сценариев, отличных от CJK.

word-wrap

Позволяет разбивать длинные слова и переносить их на следующую строку.

writing-mode

Указывает, располагаются ли строки текста горизонтально или вертикально.