javascript - python selenium 使用 !important 发送 css

标签 javascript python css selenium

我想按如下方式更改元素的 css。它在以下情况下工作正常:

browser.execute_script(
    "arguments[0].style.display = 'block';",
    browser.find_element_by_xpath("//div[@role='main']/div/div/div["+str(d)+"]/div["+str(r)+"]/div/div[2]")
)

但是当我尝试添加“!important”时,代码没有更新:

browser.execute_script(
    "arguments[0].style.display = 'block!important';",
    browser.find_element_by_xpath("//div[@role='main']/div/div/div["+str(d)+"]/div["+str(r)+"]/div/div[2]")
)

最佳答案

语句 element.style.display = 'block' 仅适用于设置有效 属性值的值。由于无法识别'block !important',因此不会添加。 !important 本身就是一个声明。

您可以改用 .setProperty(),这样您就可以添加比值更多的值。使用 'important' 作为字符串,不要添加感叹号。

browser.execute_script(
    "arguments[0].style.setProperty('display', 'block', 'important');",
    browser.find_element_by_xpath("//div")
    )

关于javascript - python selenium 使用 !important 发送 css,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32194539/

相关文章:

javascript - 如何触发 Bootstrap Carousel 的 carousel-indicators

python - 在 python tkinter Canvas 中移动对象

python - 在 pandas dataframe python 列中搜索单词

css - ReactJS CSS backgroundImage 在滚动调整窗口大小时在底部创建空白

html - 如何在 Bootstrap 中将两个元素添加到一行中?

HTML float ,100% 高度

javascript - 无法将 Vue 数据传递给 Vue 组件

javascript - 无法将作用域对象传递给部分对象

javascript - ng-model 和 ng-repeat 关系和理解 $scope

python - pyexiv2导入错误找不到libexiv2.so.12