Добавление стиля в mat-option из mat-autocomplete

У меня этот HTML код здесь

<div style = "width: 150px">
  <form class = "example-form">
  <mat-form-field class = "example-full-width">
    <input type = "text" placeholder = "Assignee" aria-label = "Assignee" matInput [formControl] = "myControl" [matAutocomplete] = "auto">
    <mat-autocomplete #auto = "matAutocomplete" [displayWith] = "displayFn">
      <mat-option *ngFor = "let option of filteredOptions | async" [value] = "option">
        {{option.name}}
      </mat-option>
    </mat-autocomplete>
  </mat-form-field>
</form>
</div>

По умолчанию mat-option использует


  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis

  1. Я хочу разбить длинное предложение на следующую строку, а не использовать .... Стиль не сработает :(

  2. Мне также нужно переопределить шрифт, который я пробовал, также используя приведенный ниже код, но он не переопределит

mat-option {
    font-family: "Times New Roman", Times, serif; // does not work
  }

стиль здесь

Пожалуйста помоги.

Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
0
27
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Причина, по которой ваша стратегия не работает, заключается в том, что фактические параметры показаны в наложении, которое помещается в <body>. Следовательно, селектор component mat-option не может работать, потому что параметры не помещены в компонент.

Чтобы переопределить любые стили, которые есть в mat-option, вам лучше обратиться к классу .mat-option и поместить его в глобальный styles.scss

.mat-option {
   font-family: "Times New Roman", Times, serif; // ?
}

Спасибо :) глупый я.

User985614 08.04.2021 12:27

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

User985614 08.04.2021 12:28

извините, это немного больше стиля для короткого ответа, вам нужно отредактировать поведение .mat-option и .mat-option-text вместе.

kvetis 08.04.2021 12:35

@ User985614: white-space: wrap; text-overflow: initial; не работает?

Groo 08.04.2021 12:40

Ну, тогда есть line-height, option height, и многое другое. Я бы посоветовал добавить больше места, чем пытаться изменить материал. Используя вход panelWidth: string | number.

kvetis 08.04.2021 12:47
Ответ принят как подходящий

Вы можете добавить это в свой CSS:

.mat-option{
  word-wrap:break-word !important;
  white-space:normal !important;
  font-family: "Times New Roman", Times, serif;
}

.mat-option-text{
  line-height:initial !important;
}

Другие вопросы по теме