>  Q&A  >  본문

"PrimeVue 라이브러리를 사용할 때 Vue3의 :deep() 선택기가 유효하지 않습니다."

<p>vue3과 PrimeVue 라이브러리를 사용하고 있습니다. <code>:deep()</code> 선택기를 사용하여 PrimeView 구성 요소의 CSS 필드를 재정의하려고 하면 아무 효과가 없습니다. 범위가 지정되지 않은 스타일을 사용할 때만 변경 사항이 적용됩니다. 왜 작동하지 않는지 혼란스러워요. </p> <p><code>:deep()</code>를 사용한 샘플 코드: </p> <pre class="brush:js;toolbar:false;"><템플릿> <토스트 위치='오른쪽 하단'/> </템플릿> <스타일 범위> :deep(.p-toast-message-icon) { 여백 오른쪽: 10px !important; } </스타일> </pre> <p>이 방법은 작동하지 않습니다. </p> <p>그러나 다음과 같이 범위 없이 <code>style</code>을 사용하는 경우: </p> <pre class="brush:js;toolbar:false;"><style> .p-toast-메시지-아이콘 { 여백 오른쪽: 10px !important; } </스타일> </pre> <p>효과가 있습니다. </p>
P粉785522400P粉785522400416일 전542

모든 응답(1)나는 대답할 것이다

  • P粉094351878

    P粉0943518782023-08-30 16:40:49

    via :deep选择器生成的规则会针对当前组件的子元素生效,但是p-toast는 요소에 연결되므로 생성된 클래스는 아무런 효과가 없습니다.

    그러나 스타일 규칙을 아이콘에 전달하도록 전달 옵션 을 설정할 수 있습니다.

    으아악

    또는

    으아악

    Sandbox에서 예시를 확인하세요.

    회신하다
    0
  • 취소회신하다