Web geliştirme sütuna sığması için 2 satır ve genişliği uygulamak nasıl?

4 Cevap php
<td style="width:230px;overflow:hidden;">
<?php echo $something; ?>
</td>

Ne yapıyorum, $something en fazla 2 satır kesilmiş, ve ... gerektiğinde eklemek için

uygulamaya çalışırken ancak gereksinimi bu tür ipucu daha az görünüyor,

Php / javascript / css kapsamında Çözümleri takdir edilmektedir!

Herkes fikirleri var?

4 Cevap

Eykanal belirtildiği gibi, doğru bir kullanıcının özel ayarları tahmin edemezsiniz. Tek şey hakkında size can do Metnin iki satır (hiçbir doldurma ile bir [n off-screen] div öğesi içindeki metin küçük bir miktar koyun ve ölçü vardır bir elemanın bir ölçüm almaktır için yükseklik), ve set taşma gizli.

Orada üç nokta almak için yapabileceği birkaç hile vardır, ama ben kesinlikle tavsiye ederim yok. Böylece elemanın metnin son bit örtbas, ebeveyn olarak aynı arka plan rengi ile, 0: mutlak pozisyonu (göreceli konumlandırma ile) ana öğe içinde bir div olabilir ve altına ayarlayın: 0, doğru.

<style type="text/css">
#parent {
  position:relative;
  overflow: hidden;
  width: 230px;
  height: auto;
  background: #f1f1f1;
}
.ellipsis {
  position: absolute;
  right: 0;
  bottom: 0;
  background: #f1f1f1;
}
</style>

<div id="parent">
  This would be the text that was inserted by the PHP code you mentioned above
  <div class="ellipsis">...</div>
</div>

Javascript yüksekliğini almak için, sonra pseudocode olarak almak ...

<script type="text/javascript">
window.onload = function() {
  var textDiv = document.createElement('div');
  textDiv.style = 'padding:0;position:absolute;left:-500px;top:-500px;';
  textDiv.innerHTML = 'Getting<br>Height';
  document.body.appendChild(textDiv);

  var textHeight = (textDiv.offsetHeight || textDiv.clientHeight);
  document.body.removeChild(textDiv);

  document.getElementById('parent').style.height = textHeight;
}
</script>

Bir Javascript çerçeve (Mootools, jQuery) kullanıyorsanız, tabii ki size bir öğe oluşturmak nasıl değiştirebilir ve özelliklerini ayarlayabilirsiniz, ancak bu, çoğunlukla en az müdahalesi ile, aradığınız ne çok yakın bir şey elde edebilir ve etmelidir.

Ayrıca javascript alınan yarım yüksekliğine üç nokta sınıfı ile tüm elementlerin yüksekliğini ayarlamak isterim.

Bu konuda tüm ı got, dostum. Umarım yardımcı olur. :-)

PHP dize yöntemleri emin değilim ama bir kesiği yöntemi için kontrol edebilirsiniz. tablo hücre sonra ($ max_num_of_table_cell) bu çağrı $ something.truncate kullanarak bir karakter maksimum sayıda aramaya çalışın

Ben metin uzun sorun olduğunu düşünüyorum. Bunun için, Kullan wordwrap fonksiyonu,

Kılavuzun için örnek:

<?php
$text = "A very long woooooooooooord.";
$newtext = wordwrap($text, 8, "\n", 1);

echo "$newtext\n";
?> 

Çıktı:

     1. A very
        long
        wooooooo
        ooooord.

Tarayıcıda son render, vb kullanımda olan CSS bağlıdır, çünkü JavaScript bu yapmak gerek

Bu question görüntülenme zaman bir dize uzunluğunu bulmak için nasıl anlatılır. Sen sütunun genişliğini biliyorum, bu yüzden metin taht karakter sayısının iki satır dolduracak anlayabilirsiniz sanırım.

Veya yaklaştığı MMMMMMM uyacak geniş karakter sayısını hesaplamak ve sadece birçok karakter alır.

Satır yüksekliği çok büyük hale gelene kadar ya da gizli bir pencerede, uygun boyutlu bir tablo oluşturmak, buna karakterler eklemeye devam