ОсновноеRadiotalkПользовательское
MPCHAT - CMS хостинг чатов для профессионалов
90   •   Посмотреть все темы

Обрезание ссылок в чате.

 

1163
Денис @Анатолич
Если человек кинет в чат очень длинную ссылку (например поисковый запрос), то внизу появляется горизонтальный скролинг, который является мувитоном.
Да и вообще слишком длинная ссылка выглядит некрасиво.
Можно как то через скрипты обрезать середину. Заменять её многоточиеем.
а выводить только 18 первых символов и 5 последних?

2615
Сергей @Pegass
#leftdiv { word-wrap: break-word; }

не?

1163
Денис @Анатолич
Pegass пишет:

#leftdiv { word-wrap: break-word; }

не?

Пробовал этот способ . слова по уродски переносятся
без знака переноса, не по слогам. а ваще хрен пойми как.
пример:
приве
т

ц
елую.

Добавил спустя сутки.
Был какой то не типичный сбой. Инфа не актуальна.

Отредактировано Анатолич - 04.09.2013
2615
Сергей @Pegass
не пиликай он так переносит если слово целиком в строку не помещается)))

есть ещё одно интересное свойство, но с ним легко не будет в том плане что я ХЗ как его правильно прикрутить в твоём случае **********

наверное так
#leftdiv a {
text-overflow: ellipsis;
display: inline-block;
width: 200px;
overflow: hidden; }


алсо, правильно писать "моветон"

Отредактировано Pegass - 03.09.2013
1163
Денис @Анатолич
Pegass пишет:

не пиликай он так переносит если слово целиком в строку не помещается)))

Ну так я про этот случай и говорю. Если сообщение длинное, или у пользователя браузер не во весь экран, или монитор в низким разрешением по горизонтали, То слова на конце строки, начинают переноситьса абсолютно дебильным образом.

Pegass пишет:

есть ещё одно интересное свойство, но с ним легко не будет в том плане что я ХЗ как его правильно прикрутить в твоём случае **********

наверное так
#leftdiv a {
text-overflow: ellipsis;
display: inline-block;
width: 200px;
overflow: hidden; }


алсо, правильно писать "моветон"

а в какую часть чатовского скрипта этот блок разместить?

2615
Сергей @Pegass
в стили это)))

1163
Денис @Анатолич
Pegass, благодарю. не совсем то чего хотелось но в целом намного лучше чем было. а можно текст который длиннее 200 пикселов не перекидывать на новую строчку, а заменять многоточием?

Отредактировано Анатолич - 03.09.2013
2615
Сергей @Pegass
Это работает для блока

1163
Денис @Анатолич
чет походу вообще не переносится и не обрезается ссылка. Сперва показалось, что переносилась только потому, что в ссылке был знак вопроса.
видимо стилями нормально не выправишь. все таки надо скриптами.
А в каком месте вообще определяется что пользователь вставил урл и подменяется текст на ссылку?
Или это идет на стороне сервера и админ чата никак отредактировать не может?

2615
Сергей @Pegass
на стороне сервера

можно отлавливать в скриптах
<a href="index.php?inc=go&amp;url=http%3A%2F%2Fvk.com%2Fclub56950330" target="_blank">http://vk.com/club56950330</a>
и обрабатывать, надо писать регулярку, а это не ко мне, не дружу я с регулярками

Отредактировано Pegass - 04.09.2013
1007
BETEPAH @BETEPAH
Анатолич пишет:

слова на конце строки, начинают переноситьса абсолютно дебильным образом.

Это не правда. Слова на конце строки переносятся полностью на новую строку. Разрывается лишь то слово, которое длиннее строки.
**********

1163
Денис @Анатолич
BETEPAH пишет:

Анатолич пишет:

слова на конце строки, начинают переноситьса абсолютно дебильным образом.

Это не правда. Слова на конце строки переносятся полностью на новую строку. Разрывается лишь то слово, которое длиннее строки.
**********

честно говоря настолько устал на работе, что нет сил ковыряться в кодах.
но в чате было именно так как я говорю. Какой мне резон врать?
Впрочем если нужно, могу попозже все таки еще раз встроить код и отскринить.
предполагаю, что все дело в том, что у вас в примере, див фиксированной ширины. а у меня в чате див сообщений "резиновый".

2615
Сергей @Pegass
такое-же резиновое

1163
Денис @Анатолич
Выпил кофе, встроил код еще раз и действительно короткие слова перенеслись корректно.
Дико извиняюсь за ложную инфу.
Но честно, именно эти комнады я использовал (правда непосредственно в "чат внутри" стили в диве прописывал, но не суть) и именно так слова и переносились вчера , после этого и рещил темку созадать.
видимо комп заглючил за 5 дней без перезагрузки.
или что то со скриптами я намутил.
может быть виной слишком мудреный скрипт отображения картинок в моем чате.
Пока не разобрался в чем дело.
Но точно было такое в Янддекс Хроме и в Опере.

В любом случае ошибка эта не типична.
Стили действительно работают.
Спасибо за настойчивость Пегасу и Ветерану.
Хотя короткая ссылка была бы все равно лучше.

Отредактировано Анатолич - 04.09.2013
1163
Денис @Анатолич
BETEPAH пишет:

Анатолич пишет:

слова на конце строки, начинают переноситьса абсолютно дебильным образом.

Это не правда. Слова на конце строки переносятся полностью на новую строку. Разрывается лишь то слово, которое длиннее строки.
**********

сорри что возвращаюсь к старому разговору.
Но так до конца и не разобрался я с принципами переноса.
в чате вроде как заработало. Но так и не понял почему.
а вот в анкете прописал такой раздел.
<tr><td><b>Мои увлечения</b></td>
<td style=" word-wrap: break-word; width: 200px;"><div>%field13%</div></td></tr>
в результате снова получается та хрень о которой я говорил выше
Приорит
еты
яв
ления
пр
ироде

Пример (справа ближе к низу): **********
пробовал стиль перенести в див. Верстка несколько менялась. Но кривой перенос букв оставался. Только расположение слов немного поменялось.

Отредактировано Анатолич - 03.11.2013
1007
BETEPAH @BETEPAH
Анатолич пишет:

Приорит
еты
яв
ления
пр
ироде

Поставьте для div'а
word-break: normal

424
ishkiniaev @ishkiniaev
а я для ссылки прописываю width и все

1163
Денис @Анатолич
BETEPAH пишет:

Анатолич пишет:

Приорит
еты
яв
ления
пр
ироде

Поставьте для div'а
word-break: normal

Тогда получается обычное написание текста. Тоже что и без стилей.
То бишь если пользователей напишет несколько слов через запятые без пробелов.
либо в разделе свой сайт оставит очень длинную ссылку. вся верстка разъедется.
С чем собственно я и боролся.

4619
Web3r @Web3r
<div style="white-space: pre-wrap; width: 200px;">А так?</div>

424
ishkiniaev @ishkiniaev
Анатолич пишет:

BETEPAH пишет:

Анатолич пишет:

Приорит
еты
яв
ления
пр
ироде

Поставьте для div'а
word-break: normal

Тогда получается обычное написание текста. Тоже что и без стилей.
То бишь если пользователей напишет несколько слов через запятые без пробелов.
либо в разделе свой сайт оставит очень длинную ссылку. вся верстка разъедется.
С чем собственно я и боролся.

width ссылкам прописать не пробовали?