DIV etiketinin yeni bir satır başlatmasını nasıl engellerim?


89

Tarayıcıya etiket içeren tek bir metin satırı çıktı vermek istiyorum. Bu işlendiğinde, DIV'nin yeni bir satıra neden olduğu görülür. Aynı satırdaki div etiketine içeriği nasıl ekleyebilirim - işte kodum.

<?php 
  echo("<a href=\"pagea.php?id=$id\">Page A</a>") 
?>
<div id="contentInfo_new">
  <script type="text/javascript" src="getData.php?id=<?php echo($id); ?>"></script>
</div>

Burada düzenlemeye çalıştım. Bu görüntüyü tek bir satırda nasıl elde edebilirim?


Sadece belirtmek gerekirse, echo kullanırken köşeli parantezlere ihtiyacınız yok. echo $id;kadar geçerlidir echo($id);.
Eddie Hart

Yanıtlar:


142

divEtiketi davranışı neden blok elemanıdır.

Bunun spanyerine satır içi olan bir öğe kullanmalısınız.

Eğer varsa gerçekten kullanmak istiyorum div, ekleyin style="display: inline". (Bunu bir CSS kuralına da koyabilirsiniz)


13
Yalnızca display: inlineDIV'nin ne için olduğu ile çelişir, bu yüzden lütfen yapmayın! Bunun yerine aralığı kullanın.
Robert K

28
Bunun çok iyi farkındayım; bu yüzden yazdım if you really want to.
SLaks

22
Div, sayfanın HTML5'ten önceki bölümü olarak tanımlanır. Herhangi bir sunum özelliği ile tanımlanmamıştır. Diğer bir deyişle, bir div, içerdiği içerik ve öğelere dayalı tanımına göre anlamsal olarak uygundur. Sonuç olarak, gösterilecek bir div ayarlamak tamamen iyidir: satır içi ve herhangi bir anlambilim veya standart tanımı ihlal etmemek.

2
Benim durumumda, span kullanamadım çünkü bir break-word wrap özelliği tanımlamak istedim ve bunlar sadece blok tipi elemanlar için çalışıyor. Ancak div'i kullanamadım çünkü yeni bir satır istemedim. Bunun yerine display: inline-blockve bir div öğesi kullandım. Tarz hakkında ne isterseniz söyleyin, ancak bu her iki sorunu da çözdü.
jsarma

Benim için işe yaramadı!
Div'in

37

Ben uzman değilim ama dene white-space:nowrap;

Beyaz boşluk özelliği tüm büyük tarayıcılarda desteklenir.

Not: Değer "inherit", IE7 ve önceki sürümlerde desteklenmez. IE8, bir !DOCTYPE. IE9 destekler "inherit".


Satır içi blok öğelerinin overflow: hidden, sarma öğesindeyken satırın sonunda
kaydırılmaması

16

div her zaman kendi satırını kaplayan bir blok elemandır.

kullanmak spanyerine etiketi


10
İşlev için sunum kafa karıştırıcı. Bir div, display: block olarak sunulduğu için kendi satırını alır ve başka bir sebep olmadan.

1
Ancak span aynı zamanda öncesinde ve sonrasında bir satır sonu oluşturur?
user3761308


5

float: solda div ve bağlantı kullanın veya bir yayılma alanı kullanın.



0

Kesme satırı yapmanın daha iyi bir yolu, CSS stil parametresi white-space ile span kullanmaktır: nowrap;

span.nobreak {
  white-space: nowrap;
}

or
span.nobreak {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

Doğrudan HTML'nizde örnek

<span style='overflow:hidden; white-space: nowrap;'> YOUR EXTENSIVE TEXT THAT YOU CAN´T BREAK LINE ....</span>

-1
<div style="float: left;">
<?php 
  echo("<a href=\"pagea.php?id=$id\">Page A</a>") 
?>
</div>
<div id="contentInfo_new" style="float: left;">
  <script type="text/javascript" src="getData.php?id=<?php echo($id); ?>"></script>
</div>

3
javascript + php kullanmak kötü bir fikir, sadece css ile sorun olmazsa.
ZurabWeb

@Piero Neden böyle söylüyorsun? Bir ön uç uygulaması için genellikle bir arka uç gerekir
Meraklı

3
@ Meraklı doğru, ancak arka uç hesaplamalar ve veri işleme gibi arka uç şeylerle ilgilenmeli, ön uç tarayıcıların işlemesi için bırakılmalıdır. Bu, sunucu yükünü azaltır ve kullanıcı deneyimini iyileştirir. Bu genel anlamda. Ancak bu özel durumda, <a href="pagea.php?id=<?php echo $id; ?> "> Sayfa A </a> yeterince iyi olacaktır. Ve getData.php ile, eğer bu apache tarafından işlenebiliyorsa neden php ayrıştırması ve çıktı javascript'i olsun? Şöyle: src = "getData.js? İd = <? Php echo $ id;?>"
ZurabWeb

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.