Я хочу, чтобы динамический контент, состоящий из длинного текстового ввода с некоторыми изображениями, в div с фиксированной шириной (300 пикселей) и высотой (1000 пикселей), проблема заключается в том, что я не могу использовать переполнение: auto в css, когда длина содержимого превышают высоту div (1000px), вместо этого меня просят разделить длинное содержимое на страницы с разбивкой на страницы.
Можно ли достичь с помощью PHP или мне нужно использовать javascript (jquery)?
Я думал подсчитать количество символов и разделить их, но это не кажется правильным, когда контент поставляется с разными размерами изображений …
Есть идеи??
Это может быть очень сложно (я хотел бы сказать «невозможно») сделать это на сервере, потому что слишком много клиентских эффектов, которые невозможно вычислить (настройки по умолчанию для браузера – по умолчанию, paddings, line-height , размер шрифта и пользовательские настройки для масштабирования), я бы предпочел сделать это на клиентов.
Я сделал небольшой пример, используя jQuery: http://jsfiddle.net/doktormolle/XwUuA/
Он принимает дочерние элементы целевого элемента и переносит их в новые элементы, которые имеют те же размеры, что и целевой элемент (если высота обертки не превышает высоту целевого элемента).
Возможно, это полезно для вас (это проект, конечно, все еще нужно работать над ним, чтобы он соответствовал вашим потребностям)
Вы можете использовать PHP. Узнайте, сколько персонажей вы можете получить за линию, и сколько строк символов будет соответствовать вашему div. Затем, с PHP, подсчитайте символы, разделите их на символы / строку, тогда у вас будет количество строк, которые ваш текст займет. Затем вы можете использовать getimagesize () для получения размеров изображений и оттуда.
Для получения дополнительной информации см. Функцию PHP .
Я хотел сделать что-то подобное с HTML, но в приложении C # Windows Forms. Я хотел бы создать некоторое содержимое на основе некоторых таблиц базы данных и отправить их на принтер. Содержимое должно было помещаться в документы формата A4.
После многих проб и ошибок я измерил максимальный размер содержимого на основе их размера, места и т. Д. И написал числа в части CSS моего HTML. С этим я мог бы получить хороший результат. Еще некоторые небольшие ошибки на некоторых входах, но это сработало для меня!