HTML + CSS: Bagaimana cara memaksa konten div untuk tetap dalam satu baris?


Jawaban:


523

Coba ini:

div {
    border: 1px solid black;
    width: 70px;
    overflow: hidden;
    white-space: nowrap;
}



14

Kode HTML Anda: <div>Stack Overflow is the BEST !!!</div>

CSS:

div {
    width: 100px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

Sekarang hasilnya harus:

Stack Overf ...

12

Semuanya melompat untuk yang ini !!! Saya juga membuat biola:

http://jsfiddle.net/audetwebdesign/kh4aR/

RobAgar punya poin untuk menunjukkan white-space:nowrapterlebih dahulu.

Beberapa hal di sini, Anda perlu overflow: hiddenjika Anda tidak ingin melihat karakter tambahan mencuat ke tata letak Anda.

Juga, seperti yang disebutkan, Anda dapat menggunakan white-space: pre(lihat EnderMB) dengan mengingat bahwa pretidak akan menciutkan ruang putih sedangkan white-space: nowrapakan.


4

Cobalah ini. Ini menggunakan predaripada nowrapseperti yang saya asumsikan Anda ingin ini berjalan mirip <pre>tetapi keduanya akan bekerja dengan baik:

div {
    border: 1px solid black;
    max-width: 70px;
    white-space:pre;
}

http://jsfiddle.net/NXchy/11/


4

Saya melompat ke sini mencari hal yang sama, tetapi tidak ada yang berhasil untuk saya.

Ada contoh di mana terlepas dari apa yang Anda lakukan, dan tergantung pada sistem (Oracle Designer: Oracle 11g - PL / SQL), divs akan selalu pergi ke baris berikutnya, dalam hal ini Anda harus menggunakan tag rentang sebagai gantinya.

Ini berhasil bagi saya.

<span float: left; white-space: nowrap; overflow: hidden; onmouseover="rollOverImageSectionFiveThreeOne(this)">
    <input type="radio" id="radio4" name="p_verify_type" value="SomeValue"  />
</span> 
Just Your Text || 
<span id="headerFiveThreeOneHelpText" float: left; white-space: nowrap; overflow: hidden;></span>

Bantuan besar dalam hal ini, ini yang berhasil untuk saya, mungkin menghabiskan 30 menit untuk ini, lol. Anehnya, saya tidak menggunakan apa pun yang Anda sebutkan, css, javascript, bootstrap, dan beberapa css khusus.
edencorbin


1
div {
    display: flex;
    flex-direction: row; 
}

adalah solusi yang berhasil untuk saya. Dalam beberapa kasus dengan div-lists, ini diperlukan.

beberapa nilai arah alternatif adalah row-reverse, column, column-reverse, unset, initial, inherit yang melakukan hal-hal yang Anda harapkan


0

Coba atur ketinggian agar blok tidak dapat tumbuh untuk mengakomodasi teks Anda, dan simpan overflow: hiddenparameternya

EDIT: Berikut adalah contoh dari apa yang Anda sukai jika Anda perlu menampilkan 2 baris tinggi:

div {
    border: 1px solid black;
    width: 70px;
    height: 2.2em;
    overflow: hidden;
}

Dalam kasus Anda, opsi nowrap mungkin lebih baik, tetapi saya meninggalkan jawaban saya karena saya kadang-kadang menemukan diri saya membutuhkan blok yang mungkin memiliki beberapa baris pembungkus sampai meluap seperti ini: jsfiddle.net/NXchy/7 (mengubah tautan dari versi Stephenmurdoch , terima kasih!)
Wouter Simons

Tidak perlu untuk ini, apa yang terjadi jika pengguna ingin memperbesar ukuran teks menggunakan ctrl- +? Menjaga ketinggian tetap fleksibel lebih baik.
Marc Audet

Jika pengguna mengubah ukuran teks dengan ctrl- + seharusnya berfungsi: jsfiddle.net/kpKW3
Wouter Simons

Menggunakan em's di heightmembuatnya tetap fleksibel, titik kunci diilustrasikan dengan baik di sini dalam contoh Anda.
Marc Audet
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.