我想从元素中获取样式值并将其指定给字符串var。 我尝试使用下面的代码,但当我尝试返回值'background:#ADFF2F'时,它返回值'rgb(173,255,47)':
IWebElement highlightedText = _driver.FindElement(By.Id("firstHeading")).FindElement(By.CssSelector("th-highlight-span"));
actualHighlightColour = highlightedText.GetAttribute("style");
这是我希望从以下网址获取样式值的网页的src代码:
<h1 id="firstHeading" class="firstHeading" lang="en">
::before
<th-highlight-span style="background:#ADFF2F" data-
rwstate="ss">California Proposition 218 (1996)</th-highlight-span>
我试图使用的代码返回'rgb(173,255,47)',可以在这里找到,但我想返回背景:#ADFF2F:
element.style {
background: #ADFF2F;
background-image: initial;
background-position-x: initial;
background-position-y: initial;
background-size: initial;
background-repeat-x: initial;
background-repeat-y: initial;
background-attachment: initial;
background-origin: initial;
background-clip: initial;
background-color: rgb(173, 255, 47);
答案 0 :(得分:1)
将RGB转换为十六进制格式
String hex = String.format("#%02x%02x%02x", r, g, b);
这将以小写字母的形式返回十六进制,如果想要使用大写字母,则只需将x
替换为X
答案 1 :(得分:0)
根据您共享的 HTML 来检索样式属性,即文本背景:#ADFF2F ,您可以使用以下解决方案:
actualHighlightColour = _driver.FindElement(By.CssSelector("h1.firstHeading#firstHeading>th-highlight-span")).GetAttribute("style");