Skip to content

CSS: tree-browser

.instui-tree-browser — 一个具有可旋转指示箭头的嵌套集合与叶子项的展开树。

每个集合都是原生的 <details>;将它们相互嵌套可构建树结构,浏览器负责处理每个分支的展开与收起。

Source: tree-browser.css

无障碍

将根节点标记为 role="tree",并将每个嵌套列表标记为 role="group"。

用法

css
@import "@pantoken/components/components.css";
@import "@pantoken/components/tree-browser.css";

示例

html
<div class="instui-tree-browser" role="tree">
  <details open>
    <summary><span class="instui-icon -icon-folder"></span> Course files</summary>
    <ul role="group">
      <li>
        <a class="item" href="#"><span class="instui-icon -icon-file-text"></span> Syllabus.pdf</a>
      </li>
      <li>
        <details>
          <summary><span class="instui-icon -icon-folder"></span> Week 1</summary>
          <ul role="group">
            <li>
              <a class="item -selected" href="#"><span class="instui-icon -icon-file-text"></span> Reading.pdf</a>
            </li>
            <li>
              <a class="item" href="#"><span class="instui-icon -icon-file-text"></span> Slides.pptx</a>
            </li>
          </ul>
        </details>
      </li>
      <li>
        <a class="item" href="#"><span class="instui-icon -icon-file-text"></span> Rubric.docx</a>
      </li>
    </ul>
  </details>
</div>

结构

text
.instui-tree-browser
  details
    summary
      [class*="-icon-"] (0..1)
    ul
      li
        side-nav-bar.item (component)
          [class*="-icon-"] (0..1)
flowchart TD n0[".instui-tree-browser"]:::cssdoc-root n1("details"):::cssdoc-part n2("summary"):::cssdoc-part n3("[class*=&quot;-icon-&quot;]"):::cssdoc-part n4("ul"):::cssdoc-part n5("li"):::cssdoc-part n6(["side-nav-bar.item"]):::cssdoc-component n7("[class*=&quot;-icon-&quot;]"):::cssdoc-part n2 -.->|0..1| n3 n1 --> n2 n6 -.->|0..1| n7 n5 --> n6 n4 --> n5 n1 --> n4 n0 --> n1 click n6 "/api/css/side-nav-bar.item.md" classDef cssdoc-root stroke-width:1px; classDef cssdoc-part stroke-width:1px; classDef cssdoc-slot stroke-width:1px; classDef cssdoc-component stroke-width:1px;

修饰符

修饰符描述
.-icon-*在摘要和叶子项中渲染文件夹/文件图标。
.-size-largeLarge。-size-lg 的长形式别名。
.-size-lgLarge。
.-size-sm小号。
.-size-small小号。-size-sm 的长形式别名。

部件

部件描述
.item树中的一个叶子条目。

伪元素

伪元素描述
::before绘制每个集合的展开指示箭头(使用蒙版的图形),当分支打开时旋转指向下方。

状态

状态描述
:state(open)

消耗代币

Token类型
--instui-component-tree-browser-border-radius<length>0.5rem
--instui-component-tree-browser-tree-button-base-spacing-large<length>1rem
--instui-component-tree-browser-tree-button-base-spacing-medium<length>0.75rem
--instui-component-tree-browser-tree-button-base-spacing-small<length>0.5rem
--instui-component-tree-browser-tree-button-border-radius<length>0.5rem
--instui-component-tree-browser-tree-button-hover-background-color<color>LightDarklight-dark(#1D354F, #EEF4FD)
--instui-component-tree-browser-tree-button-hover-text-color<color>LightDarklight-dark(#ffffff, #1C222B)
--instui-component-tree-browser-tree-button-icons-margin-right-medium<length>0.5rem
--instui-component-tree-browser-tree-button-name-font-size-large<length>1rem
--instui-component-tree-browser-tree-button-name-font-size-medium<length>0.875rem
--instui-component-tree-browser-tree-button-name-font-size-small<length>0.75rem
--instui-component-tree-browser-tree-button-name-text-color<color>LightDarklight-dark(#2369A4, #7FB4F1)
--instui-component-tree-browser-tree-button-selected-background-color<color>LightDarklight-dark(#4A5B68, #576773)
--instui-component-tree-browser-tree-button-selected-text-color<color>#ffffff
--instui-component-tree-browser-tree-button-text-line-height<percentage>125%
--instui-component-tree-browser-tree-collection-base-spacing-medium<length>0.75rem
--instui-component-tree-browser-tree-collection-font-family[ <font-family-name> | <generic-font-family> ]#Atkinson Hyperlegible Next, "Helvetica Neue", Helvetica, Arial, sans-serif
--instui-icon-chevron-right<image>url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22m9%2018%206-6-6-6%22%2F%3E%3C%2Fsvg%3E')

子组件

相关

  • menu — 两者都显示嵌套的可选条目。