Свойство CSS `white-space: pre-wrap;` сохраняет пробелы и переносы строк, но может также вызывать нежелательные эффекты, такие как излишние отступы или интервал между строками. Вот несколько способов, которые могут помочь вам устранить или скорректировать эти отступы:
1. **Убедитесь, что пробелы не добавляются в коде**: Проверьте исходный текст, убедитесь, что нет лишних пробелов или табуляций (например, перед переносом строки).
2. **Настройка свойства `line-height`**: Если у вас есть лишние отступы между строками, вы можете попробовать уменьшить значение `line-height`:
```css
.your-class {
white-space: pre-wrap;
line-height: 1; /* или значение, которое вам подходит */
}
```
3. **Проверка `margin` и `padding`**: Убедитесь, что у элементов, обернутых в контейнеры, нет ненужных отступов:
```css
.your-class {
margin: 0; /* Убираем внешние отступы */
padding: 0; /* Убираем внутренние отступы */
}
```
4. **Контроль за отступами `white-space` в родительских элементах**: Проверьте, чтобы у родительских элементов не было свойств `white-space`, которые могут оказывать влияние на дочерние. Если на родителя применен `white-space: nowrap;`, это может повлиять на отображение дочерних элементов.
5. **Использование CSS Reset**: Рассмотрите возможность использования CSS Reset или Normalize.css для устранения стандартных стилей, которые могут добавлять отступы.
6. **Спецификация `word-wrap` или `overflow-wrap`**: Если необходимо управлять переносом слов, используйте `word-wrap: break-word;` или `overflow-wrap: break-word;`, чтобы управлять поведением длинных слов в ваших строках.
7. **Использование `display` свойств**: Если проблема сохраняется, возможно, стоит попробовать изменить `display` элемента, например, использовать `display: inline-block;` или `display: block;`.
Попробуйте применить эти рекомендации по очереди, чтобы определить, что именно помогает в вашем случае.