Bagaimana cara mengubah span agar terlihat seperti pra dengan CSS?


108

Apakah mungkin untuk mengubah <span>tag (atau <div>) untuk memformat kontennya seperti <pre>tag yang hanya menggunakan CSS?

Jawaban:


164

Lihat W3C CSS2.1 Default Style Sheet atau CSS2.2 Working Draft . Salin semua pengaturan PRE dan taruh di kelas Anda sendiri.

pre {
    display: block;
    unicode-bidi: embed;
    font-family: monospace;
    white-space: pre;
}

1
Sebaiknya lakukan dengan cara ini untuk memahami dari mana default ini berasal.
— Diodeus - James MacFarlane

2
Ketika saya mencoba ini, jeda baris tidak dipertahankan.
— Agnel Kurian

Tag <pre> akan menampilkan scrollbar horizontal ketika teks terlalu lebar, tetapi css ini tidak. Ada yang tahu cara menunjukkannya?
— shindigo

1
@shindigo Sudahkah Anda mencoba menggunakan overflow: scroll? Atau jika Anda hanya ingin overflow-x: scroll pengembang
— Kanmuri

1
@shindigo overflow: auto;mungkin lebih baik jika tidak, Anda mungkin akan mendapatkan dua set scrollbar saat Anda tidak membutuhkannya.
— Pidato


25

Ini membuat SPAN terlihat seperti PRE:

span {
  white-space: pre;
  font-family: monospace;
  display: block;
}

Ingatlah untuk mengubah pemilih css sebagaimana mestinya.



2

Coba ini

span {
    white-space: pre;
    font-family: monospace;
    display: block;
    unicode-bidi: embed
}

1

Coba gaya ini

.pre {

white-space: pre-wrap;
white-space: -moz-pre-wrap;
white-space: -pre-wrap;
white-space: -o-pre-wrap;
word-wrap: break-word;
line-height: 1.5;   
word-break: break-all;
white-space: pre;
white-space: pre\9; /* IE7+ */
display: block;
}

Digunakan sama di sini - http://www.makemyshop.in/


0

Mengapa tidak menggunakan tag <pre> saja, bukan tag span? Keduanya sejajar, jadi keduanya harus berperilaku sesuai keinginan Anda. Jika Anda memiliki masalah saat menimpa seluruh definisi <pre>, berikan saja kelas / id.


1
Terkadang Anda sudah memiliki span pada halaman dan tidak dapat mengubahnya, seperti jika itu adalah bagian dari sistem CMS yang sudah ada.
— Mr. Shiny and New 安 宇

B / c kerangka kerja menolak untuk meletakkan konten di bawah <pre> saya seperti yang saya minta. Saya bisa mengatasinya, tapi itu jauh lebih sulit daripada hanya mengatur beberapa alat peraga CSS.
— jsight
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.