当前位置: 首页 > 面试题库 >

在不使用jQuery的HTML和CSS中单击时显示隐藏div

齐坚成
2023-03-14
问题内容

如果不使用JQuery,这可能吗?

它用于移动网站,但是页面始终处于脱机状态,所以我真的不想使用jquery。与自定义CSS样式相比,为jquery mobile提供自定义样式要困难得多。


问题答案:

使用labelcheckbox输入

使所选项目保持打开状态并切换。

.collapse{

  cursor: pointer;

  display: block;

  background: #cdf;

}

.collapse + input{

  display: none; /* hide the checkboxes */

}

.collapse + input + div{

  display:none;

}

.collapse + input:checked + div{

  display:block;

}


<label class="collapse" for="_1">Collapse 1</label>

<input id="_1" type="checkbox">

<div>Content 1</div>



<label class="collapse" for="_2">Collapse 2</label>

<input id="_2" type="checkbox">

<div>Content 2</div>

使用label和命名radio输入

与复选框类似,它仅关闭已打开的复选框。在两个输入上
使用name="c1" type="radio"

.collapse{

  cursor: pointer;

  display: block;

  background: #cdf;

}

.collapse + input{

  display: none; /* hide the checkboxes */

}

.collapse + input + div{

  display:none;

}

.collapse + input:checked + div{

  display:block;

}


<label class="collapse" for="_1">Collapse 1</label>

<input id="_1" type="radio" name="c1">

<div>Content 1</div>



<label class="collapse" for="_2">Collapse 2</label>

<input id="_2" type="radio" name="c1">

<div>Content 2</div>

使用tabindex:focus

radio输入类似,您还可以使用Tab键触发状态。
在手风琴外部单击将关闭所有打开的项目。

.collapse > a{

  background: #cdf;

  cursor: pointer;

  display: block;

}

.collapse:focus{

  outline: none;

}

.collapse > div{

  display: none;

}

.collapse:focus div{

  display: block;

}


<div class="collapse" tabindex="1">

  <a>Collapse 1</a>

  <div>Content 1....</div>

</div>



<div class="collapse" tabindex="1">

  <a>Collapse 2</a>

  <div>Content 2....</div>

</div>

使用 :target

与使用radio输入类似,您还可以使用Tab键进行操作

.collapse a{

  display: block;

  background: #cdf;

}

.collapse > div{

  display:none;

}

.collapse > div:target{

  display:block;

}


<div class="collapse">

  <a href="#targ_1">Collapse 1</a>

  <div id="targ_1">Content 1....</div>

</div>



<div class="collapse">

  <a href="#targ_2">Collapse 2</a>

  <div id="targ_2">Content 2....</div>

</div>

使用<detail><summary>标记(纯HTML)

您可以使用HTML5的detail和summary标签来解决此问题,而无需任何CSS样式或Javascript。请注意,Internet
Explorer不支持这些标签。

<details>

  <summary>Collapse 1</summary>

  <p>Content 1...</p>

</details>

<details>

  <summary>Collapse 2</summary>

  <p>Content 2...</p>

</details>


 类似资料:
  • 问题内容: 我有一个菜单和三个隐藏的div,这些div取决于用户选择的选项。我只想使用CSS来显示/隐藏它们。我现在正在使用jquery,但我希望禁用js即可访问它。此处有人为其他人提供了此代码,但仅在div:hover或div:active时有效,当我将其更改为div:visited时它不起作用。我是否需要添加某些内容,或者这不是正确的方法?感谢您的帮助:) 问题是我的客户希望菜单被选中时此di

  • 问题内容: 我想显示一个带有控件的基本html表,以切换其他列的显示/隐藏: 因此,默认情况下,列1和列2将是唯一显示的列-但是,当您单击列1时,我希望1a和1b切换,与列2和2a和2b相同。我可能最终会有更多的列和很多行- 因此,当我进行测试时,任何JavaScript循环方法都太慢而无法使用。 似乎足够快的唯一方法是设置一些CSS,如下所示: 然后在表标题单元格上设置onClick函数调用,这

  • 问题内容: 在我的脚本中有三个div。我想在第一行悬停时显示div ,而在第二行悬停时显示。否则,我想默认显示div 。 但它永远不会显示带有的div 。 问题答案: 你需要 原始CSS中的问题是in css选择器启动了一个全新的选择器。它没有结合..所以意味着和。您将其设置为始终对所有元素都隐藏。

  • 我想要一个像这样的Mp3播放器。我的搜索脚本显示每页10个结果。我想为每个搜索结果项插入一个mp3。 > 当我点击播放时,播放器正常打开,当我点击停止时,播放器正常停止,但是当我点击播放并在另一个结果上点击播放时,第一个没有停止,第二个打开正常... 当我点击“播放”时,我需要自动播放mp3;当我点击“停止”时,玩家必须停止。 HTML: 小提琴。

  • 问题内容: 我正在使用Angular.js应用程序,该应用程序通过医疗程序的json文件进行过滤。当使用ng- click单击(在同一页面上)过程名称时,我想显示每个过程的详细信息。这是我到目前为止的内容,.procedure-details div设置为显示:无: 我在角度上很新。有什么建议? 问题答案: 删除,然后改用: 这是小提琴:http : //jsfiddle.net/asmKj/ 您

  • 主要内容:实例,jQuery hide() 和 show(),实例,实例,实例,jQuery toggle(),实例隐藏、显示、切换,滑动,淡入淡出,以及动画,哇哦! 因为时间是宝贵的,我们提供快捷方便的学习方法。 在小牛知识库,你可以学习需要的知识。 实例 jQuery hide() 简单的jQuery hide()方法演示。 jQuery hide() 另一个hide()实例。演示如何隐藏文本。 jQuery hide() 和 show() 通过 jQuery,您可以使用 hide() 和