任务目的

  1. 深入理解html中radio的特性
  2. 深入理解CSS选择器以及伪元素的使用

任务描述

  1. 使用input的radio单选框特性结合CSS中的伪元素实现bootstrap中折叠面板(点击查看样例),要求样式一致。

任务注意事项

  1. 当其中一个面对折叠时,其他面板需要隐藏
  2. 只能使用HTML,CSS,不允许使用JavaScript
  3. 注意测试不同情况,尤其是极端情况下的效果
  4. 有能力的同学在面板折叠或者展开时添加动画效果

参考资料

  1. MDN label: 了解html中label的基本知识

MDN Adjacent sibling selectors: 了解CSS中的兄弟相邻选择器

使用CSS实现折叠面板总结

1、CSS3 :target Selector

当浏览器地址里的hash(地址里#号后面的部分)和:target伪选择器指定的ID匹配上时,它的样式就会在这个ID元素上生效。

eg:<a href="#link1">Link 1</a>

<div id="link1">

<h3>Content to Link 1</h3>

<p>Hello World!</p>

</div>

div {

display: none;

}

div:target {

display: block;

}

2、HTML DOM nextSibling Property

nextSibling属性返回在DOM树同级上,紧跟指定节点之后的节点。返回值为一个Node对象。

nextSibling与nextElementSibling区别为,nextSibling返回相邻的元素节点、文本节点或者评论节点,nextElementSibling返回相邻元素节点(不包括文本节点和评论节点)。

此属性为只读属性。

注意:使用previousSibling属性,返回制定节点DOM树同级上,之前节点。使用childNodes属性,返回指定节点的子节点。

语法:

node.nextSibling

返回值:节点对象,代表node节点相邻的下一个节点,如果没有下一个节点返回null。

3、已提交作业

代码地址https://github.com/Nunawading2016/2017-IFE-Baidu/blob/master/task4-4

预览地址http://htmlpreview.github.io/?https://github.com/Nunawading2016/2017-IFE-Baidu/blob/master/task4-4/index.html

使用CSS实现折叠面板总结的更多相关文章

  1. CSS实现折叠面板

    <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...

  2. jquery ui 常用(一)(自动完成 | 标签页 | 折叠面板 | 带图标的按钮 | 日期选择器| )

    条件,引用3个文件 jquery-ui.min.css; jquery.min.js; jquery-ui.min.js. 一.自动完成 http://www.w3cschool.cc/jqueryu ...

  3. Accoridion折叠面板

    详细操作见代码: <!doctype html> <html> <head> <meta charset="UTF-8"> < ...

  4. jQuery EasyUI 折叠面板accordion的使用实例

    1.对折叠面板区域 div 设置 class=”easyui-accordion” 2.在区域添加多个 div, 每个 div 就是一个面板 (每个面板一定要设置 title 属性). 3.设置面板属 ...

  5. 布局-EasyUI Panel 面板、EasyUI Tabs 标签页/选项卡、EasyUI Accordion 折叠面板、EasyUI Layout 布局

    EasyUI Panel 面板 通过 $.fn.panel.defaults 重写默认的 defaults. 面板(panel)当做其他内容的容器使用.它是创建其他组件(比如:Layout 布局.Ta ...

  6. amazeui学习笔记--js插件(UI增强3)--折叠面板Collapse

    amazeui学习笔记--js插件(UI增强3)--折叠面板Collapse 一.总结 注意点: 1.data-am-collapse:这个东西就是展开折叠事件 2.am-collapse(包括其下属 ...

  7. jquery做个折叠面板

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. (八)easyUI之Accordion折叠面板:动态面板

    二.动态面板 数据库设计 函数设计:该函数用于获取某个节点的所有子节点 CREATE FUNCTION fn_getAddress_ChildList_test(rootId INT) RETURNS ...

  9. (七)easyUI之Accordion折叠面板:普通的静态面板

    一.普通的静态面板 前台 <%@ page language="java" contentType="text/html; charset=UTF-8" ...

随机推荐

  1. GlobalExceptionHandler @ControllerAdvice

    package org.linlinjava.litemall.core.config; import org.apache.commons.logging.Log; import org.apach ...

  2. 吴裕雄--天生自然python学习笔记:python 建立 Firebase 数据库连接

    Python 程序通过 python-firebase 包可以存取 Firebase 数据库. 使用 python-firebase 包 首先必须安装 python-firebase 包,安装方法如下 ...

  3. QTP基本循环异常遍历(代码方式实现)

    0 环境 系统环境:win7 1 前言 在正常循环的基础下 添加异常处理遍历 一些基本操作 请看正常循环 https://www.cnblogs.com/my-ordinary/p/11739180. ...

  4. 103)PHP,递归读取目录内容

    知识点总结: 打开某个目录 依次读取目录内文件 如果某个文件为目录 递归对该目录采用打开,读取,若还是目录,继续判断,读取 递归点: 如果子文件为目录,则递归 出口: 如果目录中不存在子目录,则不需要 ...

  5. MOOC(7)- case依赖、读取json配置文件进行多个接口请求-setup(4)

    unittest封装测试类,setup对每个用例都要执行的函数进行初始化[初始化是自己的叫法] import unittest from day_20200208_mooc.base.interfac ...

  6. C语言标准库 常用函数说明

    void *memset(void *str, int c, size_t n) Syntax void *memset(void *str, int c, size_t n) Description ...

  7. IDEA如何自动添加注解作者等信息?

    1.点击File 2.点击Settings 3.点击Editor 4.点Live  Templates 5.点击左上角加号选中第2个 6.自定义命名,选中你自己创建的组,点击左上角加号选择第1个选项 ...

  8. tips [ 18870 ]

    Created at 2017-08-23 Updated at 2018-01-31 Category 东方大陆 Tag 东方大陆 上面有编辑时间的,别吐槽说什么过期内容了使用 lightPIC图床 ...

  9. shell的循环嵌套语法

    测试shell的循环嵌套语法 [root@localhost test]# vi Xunhuanqiantao.sh #!/bin/bash #程序功能描述: # 测试循环嵌套 #作者:孤舟点点 #版 ...

  10. 年薪5w和50w的人,区别到底在哪?

    年薪5w和50w的人,区别到底在哪? 2017-02-22 阿青 360投资圈 文/ 阿青 许多人在职场摸爬滚打很多年并不顺利,薪酬一直上不去.职场鸡汤喝了不少,也掌握了不少职场技能,工作经验也颇为丰 ...