搜索

首页  >  问答  >  正文

qt设计器中的伪元素

我想使用伪元素在左侧为按钮创建一条垂直线,并在悬停时变暗,但是 qt-designer styleSheet 不理解我,并且它没有正确显示,这是我的代码:

QPushButton{
position: relative;
padding: 10px 20px;
border: none;
background-color: #fff;
color: #333;
cursor: pointer;
overflow: hidden;
}

QPushButton:before {
content: "";
position: absolute;
top: 0;
left: 0;
width: 5px;
height: 100%;
background-color: #C6C6C6;
opacity: 0.5;
transition: all 0.3s ease-in-out;
border-top-right-radius: 4px;
border-bottom-right-radius: 4px;
}

QPushButton:hover:before {
background-color: #7F7F7F;
opacity: 0.8;
}

看起来怎么样 在此输入图像描述 如我所愿 在此输入图像描述

我尝试用不同的方式重写它,但我不太擅长

P粉600402085P粉600402085323 天前463

全部回复(1)我来回复

  • P粉676588738

    P粉6765887382024-01-11 14:12:56

    Qt 不支持 CSS 3.0,但支持 CSS 2.0。 你需要修改你的CSS以获得你想要的。 具体做法如下:

    QPushButton{
    position: relative;
    padding: 10px 20px;
    border: none;
    background-color: #fff;
    color: #333;
    cursor: pointer;
    overflow: hidden;
    }
    
    QPushButton:hover {
    width: 5px;
    height: 100%;
    border-left: 6px solid #7F7F7F;
    opacity: 0.5;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    
    opacity: 0.8;
    }

    回复
    0
  • 取消回复