如何用qss实现控件的阴影外边框(控件为纯色,边框外溢渐变色)
时间: 2024-03-12 08:46:41 浏览: 218
Python GUI库PyQt5样式QSS子控件介绍
可以使用 qss 中的 box-shadow 属性来实现阴影外边框,并使用边框的外补丁(padding)来实现外溢渐变色。
下面是一个示例代码:
```css
QWidget {
background-color: #fff; /* 设置控件的背景色为白色 */
border: none; /* 去掉控件的默认边框 */
padding: 10px; /* 设置控件的外补丁为 10px,用于实现外溢渐变色 */
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.5); /* 设置控件的阴影外边框,阴影颜色为黑色,透明度为 0.5 */
}
/* 实现渐变色 */
QWidget::hover {
background-color: qlineargradient(x1: 0, y1: 0, x2: 1, y2: 1, stop: 0 #fff, stop: 1 #ccc); /* 鼠标悬停时,控件的背景色渐变为白色到浅灰色 */
}
```
在这个示例中,我们首先去掉了控件的默认边框,然后设置了控件的外补丁为 10px,用于实现外溢渐变色。最后,使用 box-shadow 属性设置了控件的阴影外边框,颜色为黑色,透明度为 0.5。在鼠标悬停时,控件的背景色会渐变为白色到浅灰色,实现了外溢渐变色的效果。
注意,这个示例中的控件为 QWidget 类型,如果需要应用到其他类型的控件上,需要根据实际情况进行调整。同时,box-shadow 属性的使用也需要根据实际需要进行调整,比如可以设置阴影的偏移量、模糊半径等属性。
阅读全文