Rumah  >  Soal Jawab  >  teks badan

"Pemilih :deep() dalam Vue3 tidak sah apabila menggunakan perpustakaan PrimeVue"

<p>Saya menggunakan vue3 dan perpustakaan PrimeVue. Apabila saya cuba mengatasi medan css komponen PrimeView menggunakan <code>:deep()</code> Ia hanya menggunakan perubahan saya apabila saya menggunakan gaya tidak berskop. Saya keliru mengapa ia tidak berfungsi. </p> <p>Contoh kod dengan <kod>:deep()</code>: </p> <pre class="brush:js;toolbar:false;"><template> <Kedudukan roti bakar='buttom-right'/> </template> <skop gaya> :deep(.p-toast-message-icon) { margin-kanan: 10px !penting; } </style> </pra> <p>Ini tidak berfungsi. </p> <p>Tetapi apabila menggunakan <kod>gaya</kod> <pre class="brush:js;toolbar:false;"><style> .p-toast-message-icon { margin-kanan: 10px !penting; } </style> </pra> <p>Itu berkesan. </p>
P粉785522400P粉785522400416 hari yang lalu540

membalas semua(1)saya akan balas

  • P粉094351878

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

    melalui :deep选择器生成的规则会针对当前组件的子元素生效,但是p-toast dilampirkan pada elemen , jadi kelas yang dihasilkan tidak akan memberi kesan.

    Walau bagaimanapun, anda boleh menetapkan pilihan lulus untuk menghantar peraturan gaya kepada ikon:

    <Toast
        :pt="{
            icon: { style: 'marginRight: 10px !important;' }
        }"
    />
    

    atau

    <Toast
        :pt="{
            icon: { class: 'mr-2' }
        }"
    />
    

    Lihat contoh dalam Kotak pasir.

    balas
    0
  • Batalbalas