前端组件库——UIkit 知识点大全(四)

简介: 教程来源 https://www.vhjpe.cn/ UIkit JavaScript组件提供模态框、通知、滑动面板、标签页、手风琴、图片库等交互功能;实用工具类涵盖文本样式、背景、间距及响应式显示/隐藏控制,助力快速构建现代化响应式界面。

六、JavaScript 组件

UIkit 的 JavaScript 组件为静态页面提供了丰富的交互能力,包括模态框、下拉菜单、工具提示、滑动面板等。

6.1 模态框(Modal)- 完整交互示例
模态框是通过 uk-modal 属性创建的覆盖层窗口,用于在现有页面之上显示内容。

<!-- 模态框触发器 -->
<button class="uk-button uk-button-primary" uk-toggle="target: #modal-example">打开模态框</button>

<!-- 模态框结构 -->
<div id="modal-example" uk-modal>
    <div class="uk-modal-dialog">
        <button class="uk-modal-close-default" type="button" uk-close></button>
        <div class="uk-modal-header">
            <h2 class="uk-modal-title">模态框标题</h2>
        </div>
        <div class="uk-modal-body">
            <p>这是模态框内容。</p>
            <p>可以放置任意 HTML 内容。</p>
        </div>
        <div class="uk-modal-footer uk-text-right">
            <button class="uk-button uk-button-default uk-modal-close">取消</button>
            <button class="uk-button uk-button-primary">确认</button>
        </div>
    </div>
</div>

6.2 通知(Notification)
UIkit 提供了全局通知组件,用于显示临时消息。

// 基础通知
UIkit.notification('操作成功!');

// 带配置的通知
UIkit.notification({
    message: '数据已保存',
    status: 'success',
    pos: 'top-right',
    timeout: 3000
});

// 不同状态的通知
UIkit.notification('信息消息', { status: 'info' });
UIkit.notification('成功消息', { status: 'success' });
UIkit.notification('警告消息', { status: 'warning' });
UIkit.notification('错误消息', { status: 'danger' });

6.3 滑动面板(Off-canvas)
Off-canvas 是从屏幕侧边滑出的面板,常用于移动端菜单。

<!-- 滑动面板触发器 -->
<button class="uk-button uk-button-default" uk-toggle="target: #offcanvas-nav">打开菜单</button>

<!-- 滑动面板内容 -->
<div id="offcanvas-nav" uk-offcanvas>
    <div class="uk-offcanvas-bar">
        <button class="uk-offcanvas-close" type="button" uk-close></button>
        <h3>菜单</h3>
        <ul class="uk-nav uk-nav-default">
            <li class="uk-active"><a href="#">首页</a></li>
            <li><a href="#">产品</a></li>
            <li><a href="#">关于</a></li>
        </ul>
    </div>
</div>

6.4 标签页(Tabs)

<!-- 标签页触发器 -->
<ul class="uk-tab" uk-tab>
    <li class="uk-active"><a href="#">标签 1</a></li>
    <li><a href="#">标签 2</a></li>
    <li><a href="#">标签 3</a></li>
</ul>

<!-- 标签页内容 -->
<ul class="uk-switcher uk-margin">
    <li>标签 1 的内容</li>
    <li>标签 2 的内容</li>
    <li>标签 3 的内容</li>
</ul>

6.5 手风琴(Accordion)
https://vhjpe.cn/

<ul class="uk-accordion" uk-accordion>
    <li class="uk-open">
        <a class="uk-accordion-title" href="#">第一部分</a>
        <div class="uk-accordion-content">
            <p>第一部分的内容。这部分默认是展开的。</p>
        </div>
    </li>
    <li>
        <a class="uk-accordion-title" href="#">第二部分</a>
        <div class="uk-accordion-content">
            <p>第二部分的内容。</p>
        </div>
    </li>
    <li>
        <a class="uk-accordion-title" href="#">第三部分</a>
        <div class="uk-accordion-content">
            <p>第三部分的内容。</p>
        </div>
    </li>
</ul>

6.6 图片库(Lightbox)

<!-- 单个图片 -->
<a class="uk-button uk-button-default" href="image.jpg" uk-lightbox>打开图片</a>

<!-- 图库 -->
<div class="uk-child-width-1-3 uk-grid-small" uk-grid>
    <div>
        <a href="image1.jpg" uk-lightbox="group: gallery">
            <img src="image1_thumb.jpg" alt="">
        </a>
    </div>
    <div>
        <a href="image2.jpg" uk-lightbox="group: gallery">
            <img src="image2_thumb.jpg" alt="">
        </a>
    </div>
    <div>
        <a href="image3.jpg" uk-lightbox="group: gallery">
            <img src="image3_thumb.jpg" alt="">
        </a>
    </div>
</div>

七、实用工具类

7.1 文本

<!-- 文本对齐 -->
<p class="uk-text-left">左对齐</p>
<p class="uk-text-center">居中对齐</p>
<p class="uk-text-right">右对齐</p>
<p class="uk-text-justify">两端对齐</p>

<!-- 文本大小 -->
<p class="uk-text-small">小号文本</p>
<p class="uk-text-normal">正常文本</p>
<p class="uk-text-large">大号文本</p>
<p class="uk-text-lead">前导文本</p>

<!-- 文本颜色 -->
<p class="uk-text-primary">主要颜色</p>
<p class="uk-text-success">成功颜色</p>
<p class="uk-text-warning">警告颜色</p>
<p class="uk-text-danger">危险颜色</p>
<p class="uk-text-muted">柔色</p>

<!-- 文本截断 -->
<p class="uk-text-truncate">这是一段很长的文本,当超出容器宽度时会被截断并显示省略号。</p>

<!-- 文本换行 -->
<p class="uk-text-break">这是一段很长的文本,会在必要时自动换行。</p>

7.2 背景

<!-- 背景颜色 -->
<div class="uk-background-primary uk-padding">主要背景</div>
<div class="uk-background-secondary uk-padding">次要背景</div>
<div class="uk-background-muted uk-padding">柔色背景</div>

<!-- 背景图像 -->
<div class="uk-background-cover uk-height-medium uk-panel" 
     style="background-image: url(image.jpg);">
    背景图像覆盖
</div>

<!-- 背景固定 -->
<div class="uk-background-fixed uk-height-medium uk-panel" 
     style="background-image: url(image.jpg);">
    背景固定
</div>

7.3 间距

<!-- 边距 -->
<div class="uk-margin-small">小外边距</div>
<div class="uk-margin">默认外边距</div>
<div class="uk-margin-medium">中等外边距</div>
<div class="uk-margin-large">大外边距</div>

<!-- 内边距 -->
<div class="uk-padding-small">小内边距</div>
<div class="uk-padding">默认内边距</div>
<div class="uk-padding-large">大内边距</div>

<!-- 移除边距/内边距 -->
<div class="uk-margin-remove">无外边距</div>
<div class="uk-padding-remove">无内边距</div>

7.4 显示/隐藏

<!-- 显示/隐藏元素 -->
<div class="uk-visible@s">在平板及以上设备显示</div>
<div class="uk-visible@m">在桌面及以上设备显示</div>
<div class="uk-hidden@s">在平板及以上设备隐藏</div>
<div class="uk-hidden@m">在桌面及以上设备隐藏</div>

<!-- 响应式显示 -->
<div class="uk-display-block">块级显示</div>
<div class="uk-display-inline">内联显示</div>
<div class="uk-display-flex">Flex 显示</div>
相关文章
|
前端开发 Java 程序员
如何在swagger2中配置header请求头等参数信息?(若不会,我便手把手教你)
如何在swagger2中配置header请求头等参数信息?(若不会,我便手把手教你)
4179 1
|
Java Android开发
jvisualvm分析jvm内存溢出
jvisualvm分析jvm内存溢出
2025 0
jvisualvm分析jvm内存溢出
|
安全 API
如何通过静态凭据连接阿里云MCP Server(持续更新)
阿里云API MCP Server是阿里云官方提供的MCP服务,支持自定义API调用与Core模式全量集成。本文详解静态凭据连接方式:需安装官方应用、RAM授权、配置AccessKey,并在Qoder等客户端完成环境变量或CLI集成,实现安全高效的云服务调用。(239字)
如何通过静态凭据连接阿里云MCP Server(持续更新)
|
30天前
|
存储 人工智能 前端开发
不写框架、不用 npm,我用 AI Coding 做了一个家庭记忆站
大佬勿进!新手向,手把手带你从零做站点:妈妈再也不用担心我会忘记和她之间的温馨小故事了。
205 3
|
30天前
|
运维 安全 虚拟化
VMware Cloud Foundation 9.1 发布 - 为效率与韧性而打造的现代私有云
VMware Cloud Foundation 9.1 发布 - 为效率与韧性而打造的现代私有云
147 0
VMware Cloud Foundation 9.1 发布 - 为效率与韧性而打造的现代私有云
|
30天前
|
人工智能 API 调度
视觉大模型结合Agentic Workflow:侠客工坊重构移动端GUI自动化的技术实践
本文剖析大模型直接控制GUI在工业场景失效的根源,介绍侠客工坊首创的“Agentic Workflow”智能体工作流方案:通过视觉感知原子化、状态机驱动、分层意图对齐与反思式异常处理,实现高精度、可管控的AI手机数字员工,打通跨App数据孤岛。
232 1
|
30天前
|
人工智能 Shell API
Claude Code 企业落地观察:近两天更新暴露的 MCP、代理、权限和模型网关问题
Claude Code 在 2026 年 5 月 8 日至 5 月 9 日连续更新,修复了 MCP OAuth、VS Code、Plan mode、代理链路和 Windows/WSL 体验问题。对企业团队来说,重点不是安装,而是治理。
336 1
|
30天前
|
SQL 安全 前端开发
公司要做等保,代码审计报告找谁出?常被误读的合规问题
等保2.0要求三级及以上系统必须提供源代码安全审计报告,作为“安全开发”关键证据。该报告需聚焦逻辑层风险(如SQL注入、越权、硬编码密钥等),非漏洞扫描或渗透测试可替代。合规报告须满足:方法论合规(依据GB/T 39412-2020等)、结果可追溯(精确定位至行号+复现路径)、整改可闭环(含修复建议与免费复测)。服务方应具备CMA、CCRC等法定资质,并采用“自动化扫描+人工深度分析”双轨机制。(239字)
|
30天前
|
设计模式 人工智能 测试技术
万字长文:如何用 harness 的理念设计一个 AI 驱动的 UI 自动化工程。
Harness 是一种多 Agent 协作的设计模式,用“马具”比喻为 AI 工作流装上角色边界、状态机、产物契约与护栏规则四重约束,解决单 Agent 易跑偏、跳步、越权等问题。本文以 UI 自动化测试为例,手把手教你从零设计总控层、编写三类 Agent Prompt,并实现稳定可靠的 AI 测试生成闭环。
|
30天前
|
JSON 测试技术 API
别再卷提示词了,真正的护城河是你的私有Skill库
本文揭示AI工程化新趋势:提示词工程师岗位正快速消亡,真正壁垒在于构建私有Skill库。Skill将高频决策固化为可复用、带容错的低代码资产,深度绑定业务逻辑与私有配置,难以复制。文章对比OpenClaw、Cursor、Claude Code策略,提供从0到1建设路径,并指出三年后团队核心竞争力源于对业务的理解与Skill化沉淀。