【问题标题】:python selenium send css with !importantpython selenium 使用 !important 发送 css
【发布时间】:2015-08-25 02:16:59
【问题描述】:

我想改变元素的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]")
)

【问题讨论】:

    标签: javascript python css selenium


    【解决方案1】:

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

    您可以使用 .setProperty() 代替,它可以让您添加超过值。用'important'作为字符串,不要加感叹号。

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

    【讨论】:

      猜你喜欢
      • 2020-09-02
      • 2020-07-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-16
      • 2022-01-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多