首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏Coco的专栏

    神秘的 shadow-dom 浅析

    这里的 #shadow-root 所包含的内容其实就是所谓的 shadow-dom 。 shadow-root 通过 createShadowRoot(下文会提及) 返回的文档片段被称为 shadow-root 。 在 

    2.1K50发布于 2018-05-28
  • 来自专栏进击的Coder

    还有 Selenium 抓不到的内容?

    这段代码,首先通过 JavaScript 找到shadow-root的父节点元素,然后返回这个元素的.shadowRoot属性。 要特别注意的是,拿到shadow-root节点以后,只能通过 CSS 选择器进一步筛选里面的内容,不能用 XPath,否则会导致报错。

    2K20发布于 2021-05-17
  • 来自专栏未闻Code

    一日一技:Selenium 抓不到的内容

    shadow.find_element_by_class_name('real_content') print(content.text) 运行效果如下图所示: 这段代码,首先通过 JavaScript 找到shadow-root 要特别注意的是,拿到shadow-root节点以后,只能通过 CSS 选择器进一步筛选里面的内容,不能用 XPath,否则会导致报错。

    3.3K61发布于 2021-05-13
  • 来自专栏前端食堂

    Web Components 上手指南

    我们可以看到前面定义的 <hello-user> 标签,在控制台的 Elements 内,会显示一个 shadow-root ,表明内部是一个 Shadow DOM。 ? 设置 然后在控制台的 Elements 内,就能看到

    User Name

    ## </template> 其中 :host 伪类用来定义 shadow-root

    1.3K30发布于 2021-03-18
  • 《刚刚问世》系列初窥篇-Java+Playwright自动化测试-6- 元素基础定位方式-上篇 (详细教程)

    6.阴影定位-Shadow DOM在做web自动化的时候,一些元素在shadow-root的节点下,使得playwright中无法通过xpath来定位上面所看到的shadow-root标签其实就是一个shadowDOM Web 组件示例:<x-details role=button aria-expanded=true aria-controls=inner-details>

    Title
    #shadow-root .click();<x-details role=button aria-expanded=true aria-controls=inner-details>
    Title
    #shadow-root .click();<x-details role=button aria-expanded=true aria-controls=inner-details>
    Title
    #shadow-root

    1.9K31编辑于 2024-12-24
  • 来自专栏终身学习者

    JavaScript 是如何工作: Shadow DOM 的内部结构+如何编写独立的组件!

    <extended-button> #shadow-root <style>…</style> <slot name="image"> <img src="boot.png" slot 在浏览器中渲染后,上面的代码将构建以下扁平 DOM 树: <my-paragraph> #shadow-root

    <slot name="my-text"> <span 看看在 #shadow-root 定义了一些样式的: #shadow-root <style> #container { background: white; } #container-items inline-flex; } </style>

    上面例子中的所有样式都是#shadow-root 使用<link>元素在#shadow-root中引入样式表,这些样式表也都属于本地的。

    2.4K30发布于 2019-01-29
  • 来自专栏前端全栈开发者

    WebComponent:像搭积木一样构建Web应用

    浏览器为了实现影子 DOM 的特性,在代码内部做了大量的条件判断,比如当通过 DOM 接口去查找元素时,渲染引擎会去判断 geek-bang 属性下面的 shadow-root 元素是否是影子 DOM, 如果是影子 DOM,那么就直接跳过 shadow-root 元素的查询操作。 另外,当生成布局树的时候,渲染引擎也会判断 geek-bang 属性下面的 shadow-root 元素是否是影子 DOM,如果是,那么在影子 DOM 内部元素的节点选择 CSS 样式的时候,会直接使用影子

    1.3K10发布于 2019-12-27
  • 来自专栏北京宏哥

    《最新出炉》系列初窥篇-Python+Playwright自动化测试-6-元素定位大法-下篇

    2.阴影定位-Shadow DOM 在做web自动化的时候,一些元素在shadow-root的节点下,使得playwright中无法通过xpath来定位 上面所看到的shadow-root标签其实就是一个 Web 组件: <x-details role=button aria-expanded=true aria-controls=inner-details>

    Title
    #shadow-root

    2.7K11编辑于 2023-07-24
  • 来自专栏各类技术文章~

    使用Preact 开发基于Shadow DOM的JS插件

    shadowHost.attachShadow({ mode: "open" }); const shadowRoot = document.createElement("div"); shadowRoot.id = "shadow-root document.createTextNode(styleText)); const shadowRoot = document.createElement("div"); shadowRoot.id = "shadow-root

    2.4K30发布于 2021-10-09
  • 来自专栏

    ShadowDOM css样式处理详解

    举个例子: <x-foo> #shadow-root

    ... 在使用中,我们是这样的: <x-foo>
    aaaa
    bbbb
    </x-foo> 在shadowRoot中使用slot作为占位符: #shadow-root 举个例子: <style> x-foo { --color: red; } </style> <x-foo style="--color: blue;"> #shadow-root <style xxx

    </x-foo> 在上面的代码中,在最外面的style里面、x-foo的style属性里、shadowRoot里面的style里面,三个地方都对x-foo都配置了--color,都可以在shadow-root

    6.5K31编辑于 2022-03-29
  • 来自专栏服务器运维笔记

    Chrome 90 新功能一览: Web Component 也支持服务器渲染了!

    <slot></slot> </template>

    Light content

    </host-element> 生成了以下字符串 <host-element> #shadow-root

    73420发布于 2021-06-16
  • 来自专栏魔术师卡颂

    Chrome 90 新功能一览: Web Component 也支持服务器渲染了!

    <slot></slot> </template>

    Light content

    </host-element> 生成了以下字符串 <host-element> #shadow-root

    91520发布于 2021-05-08
  • 来自专栏ionic3+

    Ionic4兼容IE浏览器处理

    CSS自定义样式调整 Ionic4大量使用了shawdow-dom,IE浏览器不解析#shadow-root,但会解析其下内容,所以Dom都会存在,只是样式可能会不同。

    1.9K20发布于 2019-03-01
  • 来自专栏黯羽轻扬

    Web Components

    > #shadow-root (user-agent)

    #shadow-root (open)

    How you doin? ('.container').innerHTML = '<how-you-doin/>'; 能够得到:

    <how-you-doin> #shadow-root

    1.6K20发布于 2019-06-12
  • 来自专栏携程技术

    干货 | Taro性能优化之复杂列表篇

    图片中的#shadow-root是根节点,成为影子根,和主文档分开渲染。 #shadow-root可以嵌套形成节点树(Shadow Tree) <custom-wrapper is="custom-wrapper"> #shadow-root <view

    2.9K41编辑于 2022-09-22
  • 来自专栏前端杂货铺-Gopal

    十分钟带你入门 Web Components

    其中 :host 伪类用来定义 shadow-root 的样式,也就是包裹这个模板的标签的样式。 留意占位符。该占位符可以在后期使用自己的标记语言填充,后面我们会提到。 Shadow DOM 上面的 Demo 中其实已经使用了,我们可以在任意一个节点内部创建一个 Shadow DOM,在获取元素实例后,调用 Element.attachShadow() 方法,就能将一个新的 shadow-root

    2.7K11编辑于 2022-08-01
  • 来自专栏IMWeb前端团队

    webcomponent学习笔记(一)

    看到标灰的 #shadow-root 了吗?这里就是所有视频播放器控制组件的所在之处。浏览器之所以将其置灰,是为了表明这部分是在 shadow DOM 里,对于页面的其他部分来说它是不可用的。

    57940发布于 2019-12-04
  • 来自专栏腾讯IMWeb前端团队

    webcomponent学习笔记(一)

    看到标灰的 #shadow-root 了吗?这里就是所有视频播放器控制组件的所在之处。浏览器之所以将其置灰,是为了表明这部分是在 shadow DOM 里,对于页面的其他部分来说它是不可用的。

    37510编辑于 2022-06-29
  • 来自专栏AllTests软件测试

    自动化测试工具-DrissionPage

    能够处理非open状态的shadow-root元素。 安装: pip install DrissionPage 3、快速上手 1、操作浏览器 示例代码: #!

    1.9K10编辑于 2024-03-22
  • 来自专栏快学Python

    这个Python库把Selenium按在地上摩擦!

    可以同时操作浏览器中的多个标签页,即使标签页为非激活状态,无需切换 可以直接读取浏览器缓存来保存图片,无需用 GUI 点击另存 可以对整个网页截图,包括视口外的部分(90以上版本浏览器支持) 可处理非open状态的 shadow-root

    38410编辑于 2024-01-23
领券