Rumah > hujung hadapan web > tutorial css > Bagaimanakah Saya Boleh Mencapai Pemangkasan Teks CSS Serasi Penyemak Imbas dengan Elips?

Bagaimanakah Saya Boleh Mencapai Pemangkasan Teks CSS Serasi Penyemak Imbas dengan Elips?

Linda Hamilton
Lepaskan: 2024-12-24 17:38:10
asal
886 orang telah melayarinya

How Can I Achieve Cross-Browser Compatible CSS Text Truncation with Ellipses?

Memotong Rentetan Panjang dengan CSS: Pengembaraan Khusus Penyemak Imbas

Walaupun memangkas bahagian pelayan teks berdasarkan lebar logik mungkin memadai, ia selalunya menghasilkan hasil yang tidak optimum disebabkan oleh lebar aksara individu yang berbeza-beza. Sebaik-baiknya, pemotongan harus berlaku dalam penyemak imbas, di mana lebar fizikal teks yang diberikan boleh ditentukan dengan tepat.

Limpahan teks Internet Explorer: sifat elipsis mencapai matlamat ini dengan tepat, tetapi keserasian merentas penyemak imbasnya adalah terhad. Firefox kekurangan sokongan untuk hartanah ini, menyebabkan pembangun mencari penyelesaian alternatif.

Pendekatan Silang Penyemak Imbas Justin Maxwell

Justin Maxwell menawarkan penyelesaian berasaskan CSS yang menyokong silang- pemangkasan pelayar. Walau bagaimanapun, ia disertakan dengan kaveat menghalang pemilihan teks dalam Firefox.

.ellipsis {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    -o-text-overflow: ellipsis;
    -moz-binding: url('assets/xml/ellipsis.xml#ellipsis');
}
Salin selepas log masuk

Kandungan ellipsis.xml

<?xml version="1.0"?>
<bindings
  xmlns="http://www.mozilla.org/xbl"
  xmlns:xbl="http://www.mozilla.org/xbl"
  xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
>
    <binding>
Salin selepas log masuk

Mengemas kini Kandungan Nod dalam Firefox

Untuk menangani had dengan pengendalian teknik ini oleh Firefox, kod berikut boleh digunakan untuk mengemas kini kandungan nod:

function replaceEllipsis(node, content) {
    node.innerHTML = content;
    // detect gecko browser
    if (YAHOO.env.ua.gecko) {
        var pnode = node.parentNode,
            newNode = node.cloneNode(true);

        pnode.replaceChild(newNode, node);
    }
}
Salin selepas log masuk

Dengan teknik ini, pembangun boleh memotong rentetan panjang dengan CSS dengan berkesan, memastikan kandungan dinamik sesuai dalam reka letak lebar tetap sambil mengekalkan isyarat visual mesra pengguna seperti elips untuk menunjukkan pemotongan.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mencapai Pemangkasan Teks CSS Serasi Penyemak Imbas dengan Elips?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan