Переполнение CSS длинным URL - PullRequest
2 голосов
/ 12 мая 2009

Хорошо, у меня есть реклама Google внутри контейнера 160x600. Новые объявления отображаются случайным образом при обновлении. Когда появляется всплывающее объявление с длинным URL-адресом, который не содержит ни тире, ни каких-либо символов, по которым оно может быть разбито, оно выходит за пределы контейнера div. Прямо сейчас у меня переполнение: скрыто, поэтому все, что после 160 пикселей скрыто. Проблема в том, что при наличии длинного URL-адреса некоторые из них скрываются (и это нормально), но текст над рекламой также скрывается, вместо того, чтобы ломаться, потому что он выходит горизонтально по мере перехода.

Как сделать так, чтобы текст соответствовал и был обернут в 160 пикселей, даже если я не могу сделать URL-адрес под ним переносом?

Спасибо!

Ответы [ 3 ]

4 голосов
/ 12 мая 2009
3 голосов
/ 12 мая 2009

Я не думаю, что есть чистый способ CSS исправить это: http://www.w3schools.com/Css/pr_pos_overflow.asp

Чтобы решить эту проблему, вы можете поместить URL в его собственный div и установить свойство overflow скрытым. Это запретит URL выходить за пределы контейнера, но я не уверен, что это то, что вы собираетесь.

Если вы используете PHP, я обнаружил, что это может переносить ваш текст:

$t = preg_replace("/>(([[:alnum:]]+:\/\/)¦www\.)([^[:space:]]".
"{30,40})([^[:space:]]*)([^[:space:]]{10,20})([[:alnum:]#?\/&=])".
"</", ">\\1\\3...\\5\\6<", $t); 

(из http://www.webmasterworld.com/forum83/5762.htm)

edit : есть также классное свойство word-wrap css, но оно не будет обрабатываться большинством современных браузеров.

Надеюсь, это поможет


Кроме того, это своего рода дубликат: Используя CSS, как я могу разбить строку (например, длинный URL) в ячейке таблицы?

0 голосов
/ 12 мая 2009

Вы всегда можете поместить URL-адрес в отдельный DIV, а затем установить переполнение этого DIV скрытым.

...