LINUX.ORG.RU

Вывод текста в две колонки


0

0
Вот такая проблема. Есть почти готовый сайт на django, в нем на определенную страницу выводится текст с тэгами, набранный в tinyMCE.

И тут заказчику неожиданно захотелось сделать вывод текста в две колонки, чтобы по окончанию одной колонки текст переносился в другую. Автоматом.

Первой мыслью было делить текст например на два куска, но потом пришла мысль, что может разделить и по содержимому тэга, отчего получится не очень хорошо. Тэги различные, есть span-ы, p, img-и и table.

Есть какое-нибудь решение, желательно не требующее существенных изменений в структуре сайта?

anonymous
Нету такого решения. В некоторых браузерах ;) поддерживается CSS свойство (-webkit-|-moz-)column-count.

Для того, чтобы реализовать такое россбраузерно, прийдется либо делить тукст вручную (скорее всего), возможно javascript-ом, либо поигратся свойством float каждого из тегов (если выйдет, обязательно раскажы об этом).

zzandy
()
Ответ на: комментарий от zzandy
Да, похоже так и есть. Весь вечер пытаюсь решить проблему - в данной постановке она не решается. Через css ничего не получилось.

>либо поигратся свойством float каждого из тегов (если выйдет, обязательно раскажы об этом).

Чтобы поиграться с float-ом, придется резать текст на куски и заворачивать в свои <p class="...">, что конечно не такое красивое решение...

anonymous
()
заказчик - мудак. такое очень хреново читается.
Dark_SavanT ★★★★★
()
Отвечай заказчику что это невозможно и пусть идёт нах.
INFOMAN ★★★★★
()
В общем кое-как проблему решил. Не самым красивым способом конечно.

Заметил, что tinyMCE всё заворачивает в <p></p>, решил тупо разделить все по <p>, засунуть всё в массив, и разбить на середине+1. Ну и выводится всё в 2 див-а соответственно.

В случае некоторого количества (> 5) примерно равных абзацев оно выглядит на вид неплохо. Читается конечно ужасно. А если <p> меньше, или они сильно различаются по размеру, то тогда совсем плохо:)

Ну и выводится всё в 2 див-а соответственно.

Но для того случая я оставил возможность делать в текст в одну широкую колонку.

anonymous
()
Ответ на: комментарий от anonymous
Мне кажется было бы правильнее ручное деление, по какому-нибудь <hr> например.
VirRaa ★★★
()
Когда вижу сайт с текстом в две колонки, хочется у$%бать кому-то с ноги по лицу. Я не шучу.
anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.