在ipywidgets中设置框的背景色

qoq*_*osz 5 python ipywidgets

在创建带有ipywidgets的布局时,我希望有一个HBox带有边框并用选定颜色填充的布局。前者很容易设置,而后者有点麻烦。我在文档中找不到用于背景填充的控件选项。有什么解决方法吗?

from ipywidgets.widgets import Label, Layout, HBox

label1 = Label('Text1')
label2 = Label('Text2')
box1 = HBox([label1, label2], layout=Layout(border='solid 2px')) # background_color='red'?
display(box1)
Run Code Online (Sandbox Code Playgroud)

SML*_*SML 5

你可以使用 css 来做到这一点:

%%html
<style>
.lbl_bg{
    width:auto;
    background-color:yellow;
}
.box_style{
    width:40%;
    border : 2px solid red;
    height: auto;
    background-color:black;
}
</style>

lbl  = widgets.Label(value=  'Test' )
# lbl  = widgets.HTMLMath(value=  'Test' ) # Alternate way using HTMLMath
lbl.add_class('lbl_bg')
hBox = widgets.HBox([lbl],layout=Layout(justify_content= 'flex-end'))
hBox.add_class("box_style")
Run Code Online (Sandbox Code Playgroud)

输出 :

在此输入图像描述

  • 它是CSS唯一可用的方法吗? (6认同)