尘埃落定性描写细节摘要

开发了许多JavaScript库,以便为我们提供网站上的其他交互式小部件。 同样,HTML5还解释了许多流行的交互式组件,使它们成为本机Web功能。 在本文中,我们将研究一个称为<details>元素(并在此过程中使用<summary>元素),该元素为我们提供了类似于手风琴的交互式小部件。

使用<details><summary>

<details>元素可以在<body>范围内的任何位置使用。 举一个简单的例子,我们可以这样添加它:

<details>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptas, impedit.</p>
</details>

上面的示例显示了包含段落的<details>元素,突出显示了其与其他HTML段落元素的相似性。 它定义了一个语义部分,该语义部分又可能包含子元素(例如图像)和<figure>元素,诸如<input><textarea>表单元素,甚至嵌套其他<details>数组。

唯一的不同之处在于浏览器如何在前端显示此元素。 支持的浏览器(例如Chrome,Safari和最新版的Opera)将在侧面显示一个小三角形和一条明细线。

<details>元素的作用类似于手风琴小部件,因为其中的内容最初将被隐藏。 切换箭头或单击与箭头水平对齐的任意位置,将显示隐藏的内容。 我们也可以使用Tab键以及SpaceEnter键来突出显示它。

注意 :AccesibleCulture在屏幕阅读器和 详细信息 / 摘要中全面介绍了辅助功能。

开放状态

打开details元素后,如果现在使用dev工具浏览源代码,您会发现浏览器已在处于此状态时附加了open属性。 实际上,我们可以手动将open属性添加到<detail> ,以显示默认情况下打开的内容。

<details open>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptas, impedit.</p>
</details>

摘要元素

<details>元素与称为<summary>的元素一起提供; 这两个是要结合使用的,但是使用<summary>元素是完全可选的。

那么当您使用它时会发生什么呢?

<details open>
<summary>Hello World</summary>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptas, impedit.</p>
</details>

给定以上示例,默认的Detail将被Hello World代替

套料

如前所述, <details>元素可能包含其他嵌套的<details>元素,如下所示:

<details>
<summary>Hello World</summary>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptas, impedit.</p>
<details>
<summary>Hi, How are you?</summary>
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Voluptas, impedit.</p>
</details>
</details>

确实存在一个视觉问题(浏览器默认样式)(嵌套列表不会出现这种情况)。 如下所示,嵌套元素与模糊真实层次结构的父元素一起向左对齐:

但是,通过添加一些简单的样式可以轻松解决此问题。 因此,让我们看看如何设计这些元素。

使用CSS设置样式细节

<details><summary>元素可以像其他任何块元素一样设置样式。 通过元素选择器,类或ID选择它们,并堆叠一堆属性以对其进行样式设置。

details {
padding: 15px;
background-color: #f6f7f8;
margin-bottom: 20px;
}

此外,您可以使用属性选择器为打开状态指定样式。

details[open] {
/* the style goes here */
}

<summary>元素也可以设置样式。 说到这,如果将鼠标悬停在诸如按钮或锚点之类的可单击元素上,则光标通常会变成指针。 但是<summary>元素并非如此,该元素也是可单击的。 游标将变成text游标,感觉有点不自然,因此您可能需要修改默认样式,将游标定义为pointer

summary {
cursor: pointer;
}

造型三角形

现在,您一直想问一个问题:您可以为小三角形设置样式吗? 目前还没有标准,但是Webkit为此使用了伪元素::-webkit-details-marker 。 通过这种方式,我们可以自定义默认的箭头样式,例如颜色,背景色以及箭头大小。

summary::-webkit-details-marker {
color: #fff;
background-color: #000;
}

不幸的是,至少在撰写本文时,不可能直接通过::-webkit-details-marker替换箭头。 唯一可行的方法是使用::before::after替换它。

summary::-webkit-details-marker {
display: none;
}
summary:before {
content: "\2714"; /* the new icon */
color: #696f7c;
margin-right: 5px;
}

浏览器支持

在过去两年中,浏览器对这两个元素的支持得到了很大的改善。 早在2011年和2012年,Chrome是唯一能够呈现<details><summary>浏览器-尽管该实现存在一些可访问性问题。 Safari和Opera仅在最近才加入该俱乐部。

因此,就支持Firefox和Internet Explorer而言,有多个polyfill选项可以模拟该功能,例如Mathias Bynens和jQuery Details开发的 。 尽管此polyfill看似依赖jQuery,但文件大小比jQuery UI库对应的文件小得多。

一旦实施,就可以像往常一样设置样式。

summary:before {
content: "\25B8"; /* unicode character of the litle triangle  */
color: #000;
margin-right: 5px;
}

有关浏览器支持的更多信息,请访问caniuse.com 。

用例和范例

您可能已经在野外看到了这些元素。 例如,在网上购物时,您可能会发现一些网站在手风琴中包装了其产品的详细说明。 否则,他们可能会在边栏中使用它来过滤结果,例如Payless 。

<details><summary>元素也非常适合组织通常在定价表布局中找到的FAQ项目和功能列表项目。 我已经创建了一个演示,您可以在此处免费使用它。

结论

正如亚伦·伦姆斯登(Aaron Lumsden) 在这篇文章中所说的

因此,非常感谢这个新元素。 有一天,也许随着Web组件的出现,在添加简单的控件(如Accordion)时,构建网站或Web应用程序对JavaScript库的依赖程度会降低。

因此,您是否曾经在网站中使用<details><summary>

翻译自: https://webdesign.tutsplus.com/tutorials/explaining-the-details-and-summary-elements--cms-21999

尘埃落定性描写细节摘要

尘埃落定性描写细节摘要_解释“细节”和“摘要”元素相关推荐

  1. 微带滤波器摘要_滤波器详细分类摘要.ppt

    滤波器详细分类摘要 低通原型滤波器的理想化衰减一频率特性如图1所示.纵坐标代表衰减量,横坐标代表频率.当田w小于w1,时,信号的衰减量近似等于零,称之为通带;当w>w1,时,信号的衰减量近似为无 ...

  2. 3Dmax学习质感细节立体_记录一下

    3Dmax学习质感细节立体_记录一下 冰淇淋 抱枕 绣球 灯罩 足球 桥 旋转楼梯 电脑桌 1.冰淇淋:https://download.csdn.net/download/m0_46233342/4 ...

  3. 文本摘要提取_了解自动文本摘要-1:提取方法

    文本摘要提取 Text summarization is commonly used by several websites and applications to create news feed ...

  4. 唐 库利超级计算机,第七卷 乖离性 百万亚瑟王_第二百五十二章 绝望中的希望...

    第七卷 乖离性 百万亚瑟王_第二百五十二章 绝望中的希望 赫布里底训练大厅. "诸位,结果已经分析出来了,丘库林,也就是被你们捉到的闯入者,他身上的神装的确是断绝时代的遗物不错,而且,这件神 ...

  5. python nlp文本摘要_理解文本摘要并用python创建你自己的摘要器

    我们都与使用文本摘要的应用程序进行交互. 这些应用程序中的许多应用程序都是用于发布有关每日新闻,娱乐和体育的文章的平台. 由于我们的日程安排很忙,因此我们决定在阅读全文之前先阅读这些文章的摘要. 阅读 ...

  6. python自动视频摘要_专栏丨深度学习之视频摘要简述

    原标题:专栏丨深度学习之视频摘要简述 机器之心专栏 作者:图鸭科技 现如今城市生活节奏越来越快,我们每天接收的信息越来越多.在庞大视频信息中,作为用户的我们在看完整视频之前,更想知道视频主题是什么.视 ...

  7. java太阳系论文摘要_研究生论文摘要如何写?

    研究生论文摘要如何写? 发布时间:2017-11-01 11:59:18更新时间:2017-11-23 17:32:35所属分类:期刊知识浏览:1次 论文摘要可以说对作者的学术论文是非常重要的,虽然论 ...

  8. 计算机科技论文范文,★计算机科技论文摘要范文计算机科技论文摘要写

    ★计算机科技论文摘要范文计算机科技论文摘要写 当今计算机科技快速发展,我国虽然在计算机科技领域已取得了较大的发展,但是与世界的高端的水平仍有一定的差距,因此借鉴国外的优秀研究成果是非常重要的.在借鉴国 ...

  9. 本科计算机论文摘要怎么写,★本科计算机论文摘要范文本科计算机论文摘要写...

    ★本科计算机论文摘要范文本科计算机论文摘要写 分析应用型本科计算机专业实践教学体系及其实施过程中存在的不足,提出构建培养应用型人才的",基本操作",.",硬件应用&quo ...

最新文章

  1. linux 软件集成工具箱,在PB中动态修改SQL语句
  2. java JFrame修改左上角的图片
  3. 3.1.11 段页式管理方式
  4. 模块设计之“模块”与“模块化”
  5. (36)虚拟时钟(中心对齐约束)
  6. Visual Studio 2012 更新包2发布,附离线安装方法及下载
  7. java 后台判断浏览器类型
  8. 第二章作业-第1题-万世想
  9. PHPWAMP开机自启异常,服务器重启后Apache等服务不会自启的原因分析
  10. 超好用的数据迁移工具
  11. 第六章:纯策略纳什均衡
  12. Android 防止App退出 或者 启动另一个App
  13. 论文笔记 ACL 2017|Exploiting Argument Information to Improve Event Detection via Supervised Attention
  14. 陶渊明笔下的桃花源就在此,连郭沫若都赞不绝口
  15. NOI 雇佣兵讲解(c/c++)
  16. C语言对时间单位的换算
  17. pe修复linux驱动,【CTF习题】BrokenDrivers(驱动修复及内核调试)
  18. U3D_Maze开发手记
  19. Android运行项目时提示:No signature of method: build_*.android() is applicable for argument types
  20. ssm+jsp校友交流平台

热门文章

  1. ipados 文件 连接服务器,如何管理iPad文件 iPadOS14使用教程
  2. SpringBoot基础的依赖说明
  3. 《Flask Web开发——基于Python的Web应用开发实践》一字一句上机实践(上)
  4. 让该来的事情到来吧——《梵高》
  5. Tomcat执行shutdown时报错:java.net.ConnectException: Connection refused (Connection refused)解决办法
  6. 输入自变量范围matlab,matlab已知约束条件求自变量范围
  7. 邮件钓鱼实验之Gophish
  8. 【笔记6-支付及订单模块】从0开始 独立完成企业级Java电商网站开发(服务端)
  9. 食油大学C++程序设计题解
  10. 牛客练习赛33 - ABCD