как уместить вывод html из difflib.HtmlDiff в одно окно без полосы прокрутки

Как уместить вывод html из difflib.HtmlDiff в одно окно без полосы прокрутки.

Я прикрепляю свое выходное изображение html сюда: выходной html


person Sushmitha    schedule 10.08.2018    source источник


Ответы (2)


Для горизонтальной полосы прокрутки вы можете уменьшить ширину таблицы, используя необязательный аргумент wrapcolumn при создании объекта difflib.HtmlDiff.

html_table = difflib.HtmlDiff(wrapcolumn=80).make_table(
    expected,
    actual,
)

Если вы имели в виду вертикальную полосу прокрутки, вы можете уменьшить высоту, используя context=True в вызове функции make_table или make_file. Вы также можете настроить аргумент numlines, если хотите.

difflib.HtmlDiff больше ничего не дает для настройки, и мне очень сложно настроить внешний вид с помощью CSS. Генерируемый им HTML очень архаичен и негибок.

https://docs.python.org/3/library/difflib.html#difflib.HtmlDiff

Однако в этом вопросе есть несколько предложений по альтернативе difflib.HtmlDiff.

person aldel    schedule 29.01.2020

Есть несколько вещей, которые вы можете сделать.

  • Если вывод находится в контейнере, таком как таблица или div, вы можете установить ширину на 100%
  • Если вывод находится в таблице, вы можете установить ширину ячейки {.outputDiv table .cell1 width:50px} ....
  • Вы можете использовать css для удаления полосы прокрутки .outputDiv {overflow-x: hidden;}. Это скроет весь контент, который не помещается в ваш outputDiv, поэтому убедитесь, что он имеет правильный размер.
person Robert    schedule 10.08.2018