2010-06-22 35 views
6

Tôi có một chuỗi truy vấn lớn nhưchuỗi dài không tách trên nhiều dòng trong IE

http://terra.cic.local/web/index.cfm//pm/uebersicht?sucheAufgeklappt=was%2Cwie%2Cwohin%2Cwann%2Cwer&sucheVon=&sucheBis=&sucheIstErsteSeiteAnzahlProdukteErmitteln=false&sucheIDReiseart=26&sucheHotelart=1081&sucheHotelart=1082&sucheIDLand=347&sucheRegion=214&sucheIstZeitlichFlexibel=true&sucheDauer=&sucheAnzahlErwachsene=2&sucheAnzahlKinder=0&sucheAnzahlPersonen=2&sucheAnzahlSchlafzimmer=&sucheEntfernungStrand=&sucheEntfernungSkilift=

liên kết này sẽ được dán hiển thị trong một div với 700px chiều rộng. trong FF nó sẽ được chia nhỏ trên nhiều dòng nhưng trong IE not.The chuỗi conplete được hiển thị trong một dòng. và ngắt bố cục trang.

Bất kỳ đề xuất nào?

Cảm ơn.

Trả lời

10

Sử dụng phong cách sau:

.divideMe{ 
width:100px; 
word-wrap: break-word; 
} 

<div class='divideMe'>reallyreallyreallyreallyreallyreallylongstring</div> 

Nó sẽ ra

reallyreallyreally 
reallyreallyreallyl 
ongstring 

Mặc dù nó không thực sự phá vỡ từ trong khối vì vậy bạn vẫn có thể chọn nó bằng cách tăng gấp đôi (ba) cách nhấn vào nó . Tôi không chắc chắn về cách trình duyệt tương thích này nhưng nó có vẻ hoạt động tốt trên các trình duyệt mà tôi có sẵn. Lưu ý rằng đây là thuộc tính CSS1 CSS3.

Thử nghiệm trên IE 6,7,8 hoạt động tốt. Cũng tốt trên FF 3.6

Một giải pháp khác là ẩn luồng và hiển thị thanh cuộn nếu bạn muốn giữ nó trong một dòng. Nhưng vì cách tiếp cận đầu tiên của bạn là hiển thị toàn bộ chuỗi thay vì ẩn nó, tôi nghĩ đây có thể là một cách tiếp cận tốt.

+0

Hoạt động nhưng không hoạt động. – Phliplip

+0

@Phliplip - Nó [sẽ hợp lệ] (http://www.w3.org/TR/css3-text/#word-wrap), nhưng [trình xác thực W3 hiện tại] (http://jigsaw.w3.org/css-validator /) không thể kiểm tra sự tuân thủ CSS 3. –

+0

Hạn chế của giải pháp này là bạn không có bất kỳ kiểm soát nơi mà các vi phạm sẽ xuất hiện. Sử dụng phần tử '', như được mô tả trong câu trả lời của tôi, bạn có thể đặt các địa điểm nơi bạn muốn URL ngắt (ví dụ: trước mỗi '&'). –

0

Nếu bạn muốn ký tự gạch nối ở cuối dòng, bạn có thể sử dụng thực thể HTML &shy;.

Nhưng nếu bạn chỉ muốn ngắt dòng, hãy chèn phần tử <wbr> trong văn bản liên kết của bạn. Hãy nhận biết về sự không thống nhất của trình duyệt, được mô tả tại Quirksmode.org.

Điều đó nói rằng, tôi sẽ thay đổi văn bản liên kết thành nội dung nào đó có ý nghĩa hơn URL dài như vậy.

Các vấn đề liên quan