По умолчанию tk frames сжимаются или растут, чтобы соответствовать их содержимому , чего вы хотите в 99% случаев. Термин, описывающий эту функцию, - «распространение геометрии». Существует команда , чтобы включить или отключить распространение геометрии при использовании pack
(и аналогичного для grid
).
Поскольку вы используете пакет, синтаксис будет выглядеть следующим образом:
f.pack_propagate(0)
или, возможно, root.pack_propagate(0)
, в зависимости от того, какие виджеты вы действительно хотите повлиять.
Как сказано, подавляющее большинство времени вы должны позволить tkinter вычислить размер. Когда вы поворачиваете распространение геометрии, ваш графический интерфейс не будет хорошо реагировать на изменения разрешения, изменения в шрифтах и т. Д. Менеджеры геометрии tkinter (pack
, place
и grid
) являются чрезвычайно мощными. Научитесь использовать эту власть.
Вместо выравнивания элемента к bottom: -5px;
используйте выравнивание top
, чтобы избежать этого.
#slideshow > div
{
width: 970px;
height: 500px;
display: block;
float: left;
position: absolute;
top: 150px; /* <- change this */
right: auto;
background-repeat: no-repeat;
margin-left: 20px;
line-height: 180px;
}