Как показать виджеты ipywidgets в абсолютном положении в Jupyter Lab? - PullRequest
0 голосов
/ 21 декабря 2018

Я пытаюсь найти способ создания виджетов ipywidgets, которые отображаются в абсолютном положении, я могу установить их абсолютное положение, но всякий раз, когда я делаю это в Jupyter Lab, виджеты, кажется, скрывают себя (тольковерхний бит показывает).

Я попытался изменить z-index элементов div, содержащих виджеты, но это, похоже, не имело никакого эффекта.

Я попытался изменить CSS страницы, чтобы она читала .p-Widget {…; position: static; …;}вместо .p-Widget {…; position: relative; …;}.Это сработало, но привело к множеству других проблем.

Стоит также отметить, что приведенный ниже код работает в Jupyter Notebook, но не в Jupyter Lab.

# creates a VBox of buttons
w = widgets.VBox([widgets.Button(description='button'+str(i)) for i in range(0, 6)], style=style)

w.add_class('my_class_name')

# renders a button to put w in absolute position 
onclick_str = 'document.getElementsByClassName("my_class_name")
[0].style.position = "absolute"'

button_str = "<button onclick=%c%s%c>position: absolute</button>" % ("'", onclick_str, "'")

widgets.HTML(button_str)

# renders a button to put w in relative position
onclick_str = 'document.getElementsByClassName("my_class_name")[0].style.position = "relative"'

button_str = "<button onclick=%c%s%c>position: relative</button>" % ("'", onclick_str, "'")

widgets.HTML(button_str)
...