Bricks Schema 中文文档:下拉菜单

📄 原始资料 (已截断)  |  展开查看原始 JSON(dropdown.json){ “$schema”: “https://json-schema.org/draft/2020-12/schema”, “$id”: “bricks://elements/dropdown”, “schemaVersion”: “2.3”, “type”: “object”, “title”: “Dropdown”, “description”: “Schema for Bricks Dropdown element”, “metadata”: { “name”: “dropdown”,…

📄 原始资料 (已截断)  |  展开查看原始 JSON(dropdown.json)
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "bricks://elements/dropdown",
  "schemaVersion": "2.3",
  "type": "object",
  "title": "Dropdown",
  "description": "Schema for Bricks Dropdown element",
  "metadata": {
    "name": "dropdown",
    "category": "general",
    "tag": "li",
    "nestable": true
  },
  "settings": {
    "tag": {
      "label": "HTML tag",
      "valueSchema": {
        "type": "string"
      },
      "controlType": "text",
      "labelZh": "HTML 标签"
    },
    "text": {
      "label": "Text",
      "default": "Dropdown",
      "valueSchema": {
        "type": "string"
      },
      "controlType": "text",
      "labelZh": "文本"
    },
    "link": {
      "label": "Link to",
      "valueSchema": {
        "type": "object",
        "description": "Link settings",
        "properties": {
          "type": {
            "type": "string"
          },
          "url": {
            "type": "string"
          },
          "postId": {
            "type": [
              "string",
              "integer"
            ]
          },
          "newTab": {
            "type": "boolean"
          },
          "rel": {
            "type": "string"
          },
          "title": {
            "type": "string"
          },
          "ariaLabel": {
            "type": "string"
          },
          "lightboxId": {
            "type": "string"
          },
          "lightboxType": {
            "type": "string"
          }
        },
        "descriptionZh": "链接设置。"
      },
      "controlType": "link",
      "labelZh": "链接到"
    },
    "ariaLabel": {
      "label": "Attribute",
      "valueSchema": {
        "type": "string"
      },
      "controlType": "text",
      "labelZh": "属性"
    },
    "icon": {
      "label": "Icon",
      "css": [
        {
          "selector": ".brx-submenu-toggle button > svg"
        }
      ],
      "valueSchema": {
        "type": "object",
        "description": "Icon settings",
        "properties": {
          "library": {
            "type": "string"
          },
          "icon": {
            "type": "string"
          },
          "svg": {
            "type": "object"
          }
        },
        "descriptionZh": "图标设置。"
      },
      "controlType": "icon",
      "labelZh": "图标"
    },
    "iconPadding": {
      "label": "Icon padding",
      "css": [
        {
          "property": "padding",
          "selector": ".brx-submenu-toggle button"
        }
      ],
      "valueSchema": {
        "type": "object",
        "description": "Spacing value with directional properties",
        "properties": {
          "top": {
            "type": "string",
            "description": "Top spacing value with unit",
            "descriptionZh": "顶部间距值(带单位)。"
          },
          "right": {
            "type": "string",
            "description": "Right spacing value with unit",
            "descriptionZh": "右侧间距值(带单位)。"
          },
          "bottom": {
            "type": "string",
            "description": "Bottom spacing value with unit",
            "descriptionZh": "底部间距值(带单位)。"
          },
          "left": {
            "type": "string",
            "description": "Left spacing value with unit",
            "descriptionZh": "左侧间距值(带单位)。"
          }
        },
        "additionalProperties": false,
        "descriptionZh": "带方向属性的间距值。"
      },
      "controlType": "spacing",
      "labelZh": "图标内边距"
    },
    "gap": {
      "label": "Gap",
      "units": true,
      "css": [
        {
          "property": "gap",
          "selector": ".brx-submenu-toggle"
        }
      ],
      "valueSchema": {
        "oneOf": [
          {
            "type": "string",
            "description": "Value with unit (e.g., \"10px\", \"50%\")",
            "descriptionZh": "带单位的值(例如 \"10px\"、\"50%\")。"
          },
          {
            "type": "number"
          }
        ]
      },
      "controlType": "number",
      "labelZh": "间距"
    },
    "iconPosition": {
      "label": "Icon position",
      "options": {
        "left": "Left",
        "right": "Right",
        "leftZh": "左侧",
        "rightZh": "右侧"
      },
      "css": [
        {
          "property": "flex-direction",
          "selector": ".brx-submenu-toggle",
          "value": "row-reverse",
          "required": "left"
        }
      ],
      "valueSchema": {
        "oneOf": [
          {
            "type": "string",
            "description": "Single selection",
            "descriptionZh": "单选。"
          },
          {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "Multiple selection",
            "descriptionZh": "多选。"
          }
        ]
      },
      "controlType": "select",
      "labelZh": "图标位置"
    },
    "iconSize": {
      "label": "Icon size",
      "units": true,
      "css": [
        {
          "property": "font-size",
          "selector": ".brx-submenu-toggle button"
        }
      ],
      "valueSchema": {
        "oneOf": [
          {
            "type": "string",
            "description": "Value with unit (e.g., \"10px\", \"50%\")",
            "descriptionZh": "带单位的值(例如 \"10px\"、\"50%\")。"
          },
          {
            "type": "number"
          }
        ]
      },
      "controlType": "number",
      "labelZh": "图标尺寸"
    },
    "iconColor": {
      "label": "Icon color",
      "css": [
        {
          "property": "color",
          "selector": ".brx-submenu-toggle button"
        }
      ],
      "valueSchema": {
        "description": "Color value in various formats",
        "oneOf": [
          {
            "type": "object",
            "properties": {
              "hex": {
                "type": "string",
                "pattern": "^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$"
              }
            },
            "required": [
              "hex"
            ]
          },
          {
            "type": "object",
            "properties": {
              "rgb": {
                "type": "string",
                "pattern": "^rgba?\\("
              }
            },
            "required": [
              "rgb"
            ]
          },
          {
            "type": "object",
            "properties": {
              "hsl": {
                "type": "string",
                "pattern": "^hsla?\\("
              }
            },
            "required": [
              "hsl"
            ]
          },
          {
            "type": "object",
            "properties": {
              "raw": {
                "type": "string",
                "description": "Raw color value or CSS variable",
                "descriptionZh": "原始颜色值或 CSS 变量。"
              }
            },
            "required": [
              "raw"
            ]
          }
        ],
        "descriptionZh": "各种格式的颜色值。"
      },
      "controlType": "color",
      "labelZh": "图标颜色"
    },
    "iconTransform": {
      "label": "Icon transform",
      "css": [
        {
          "property": "transform",
          "selector": ".brx-submenu-toggle button"
        }
      ],
      "valueSchema": {
        "type": "object",
        "description": "CSS transform settings",
        "properties": {
          "translateX": {
            "type": "string"
          },
          "translateY": {
            "type": "string"
          },
          "translateZ": {
            "type": "string"
          },
          "scaleX": {
            "type": "string"
          },
          "scaleY": {
            "type": "string"
          },
          "scaleZ": {
            "type": "string"
          },
          "rotateX": {
            "type": "string"
          },
          "rotateY": {
            "type": "string"
          },
          "rotateZ": {
            "type": "string"
          },
          "skewX": {
            "type": "string"
          },
          "skewY": {
            "type": "string"
          },
          "perspective":

... (内容过长已截断,完整 JSON 见原始文件)

前言

Bricks Dropdown 元素的 schema。

基本信息

  • 英文名称Dropdown
  • 中文名称:下拉菜单
  • Schema IDbricks://elements/dropdown
  • Schema 版本2.3
  • 类型object
  • 分类general
  • Tagli
  • 内部名称dropdown

设置项

  • tag — HTML 标签 (text)
  • text — 文本 (text)
  • link — 链接到 (link)
  • ariaLabel — 属性 (text)
  • icon — 图标 (icon)
  • iconPadding — 图标内边距 (spacing)
  • gap — 间距 (number)
  • iconPosition — 图标位置 (select)
  • iconSize — 图标尺寸 (number)
  • iconColor — 图标颜色 (color)
  • iconTransform — 图标变换 (transform)
  • iconTransformOpen — 图标变换 (transform)
  • iconTransition — 图标过渡 (text)
  • caretSize — 尺寸 (number)
  • caretColor — 颜色 (color)
  • caretTransform — 变换 (transform)
  • caretPosition — 位置 (dimensions)
  • static — 位置 (checkbox)
  • toggleOn — 触发方式 (select)
  • contentWidth — 最小宽度 (number)
  • contentTransition — 过渡 (text)
  • contentTransform — 变换 (transform)
  • contentTransformOpen — 变换 (transform)
  • contentBackground — 背景 (background)
  • contentBorder — 边框 (border)
  • contentBoxShadow — 盒子阴影 (box-shadow)
  • contentTypography — 排版 (typography)
  • contentItemJustifyContent — 内容对齐 (justify-content)
  • contentItemPadding — 内边距 (spacing)
  • contentItemBackground — 背景 (color)
  • contentItemBorder — 边框 (border)
  • contentItemTypography — 排版 (typography)
  • contentItemTransition — 过渡 (text)
  • contentItemBackgroundActive — 背景 (color)
  • contentItemBorderActive — 边框 (border)
  • contentItemTypographyActive — 排版 (typography)
  • megaMenu — 启用 (checkbox)
  • megaMenuSelector — CSS 选择器 (text)
  • megaMenuSelectorVertical — CSS 选择器 (text)
  • multiLevel — 启用 (checkbox)
  • multiLevelBackText — 返回 (text)
  • multiLevelBackTypography — 返回 (typography)
  • multiLevelBackBackground — 返回 (color)
  • _content — 内容 (text)
  • _margin — 外边距 (spacing)
  • _padding — 内边距 (spacing)
  • _width — 宽度 (number)
  • _widthMin — 最小宽度 (number)
  • _widthMax — 最大宽度 (number)
  • _height — 高度 (number)
  • _heightMin — 最小高度 (number)
  • _heightMax — 最大高度 (number)
  • _aspectRatio — 宽高比 (text)
  • _position — 位置 (select)
  • _top — 顶部 (number)
  • _right — 右侧 (number)
  • _bottom — 底部 (number)
  • _left — 左侧 (number)
  • _zIndex — Z 索引 (number)
  • _order — 顺序 (number)
  • _display — 显示 (select)
  • _visibility — 可见性 (select)
  • _overflow — 溢出 (text)
  • _opacity — 不透明度 (number)
  • _cursor — 光标 (select)
  • _isolation — 隔离 (select)
  • _mixBlendMode — 混合模式 (select)
  • _pointerEvents — 指针事件 (text)
  • _perspective — 透视 (number)
  • _perspectiveOrigin — 透视原点 (text)
  • _gridItemJustifySelf — 自身水平对齐 (align-items)
  • _flexDirection — 方向 (direction)
  • _alignSelf — 自身对齐 (align-items)
  • _justifyContent — 主轴对齐 (justify-content)
  • _alignItems — 交叉轴对齐 (align-items)
  • _gap — 间距 (number)
  • _flexGrow — 放大比例 (number)
  • _flexShrink — 缩小比例 (number)
  • _flexBasis — 伸缩基准 (text)
  • _useMasonry — %s 布局 (checkbox)
  • _masonryColumn — 列数 (number)
  • _masonryGutter — 间距 (number)
  • _masonryHorizontalOrder — 水平顺序 (checkbox)
  • _masonryTransitionDuration — 过渡 (number)
  • _masonryTransitionMode — 显现动画 (select)
  • _typography — _typography (typography)
  • _background — _background (background)
  • _shapeDividers — 自定义形状 (repeater)
  • _gradient — _gradient (gradient)
  • _border — 边框 (border)
  • _boxShadow — 盒子阴影 (box-shadow)
  • _transform — 变换 (transform)
  • _transformOrigin — 变换原点 (text)
  • _motionElementParallax — 元素视差 (checkbox)
  • _motionElementParallaxSpeedX — 水平速度 (number)
  • _motionElementParallaxSpeedY — 垂直速度 (number)
  • _motionBackgroundParallax — 背景视差 (checkbox)
  • _motionBackgroundParallaxSpeed — 背景速度 (number)
  • _motionStartVisiblePercent — 视差起点 (number)
  • _cssCustom — 自定义 CSS (code)
  • _cssClasses — CSS 类 (text)
  • _cssId — CSS ID (text)
  • _cssFilters — CSS 滤镜 (filters)
  • _cssTransition — 过渡 (text)
  • _attributes — 姓名 (repeater)
  • _scrollSnapType — 类型 (select)
  • _scrollSnapAlign — 对齐 (select)
  • _scrollSnapStop — 停止 (select)

补充说明

更多细节可参考 Bricks 官方 Academy 文档