当前位置: 首页 > 知识库问答 >
问题:

javascript - 如何实现父元素内子元素的两行排列?

穆俊哲
2024-05-06


现在我想实现这样一个效果,父元素是红色的框,然后里面有很多子元素,我想要这些子元素在父元素成两行排列,且初始的时候超出部分是隐藏的,然后在父元素的容器出出现一个省略号的按钮,点击这个省略号按钮,隐藏部分出现,出现横向滚动条

如上

共有1个答案

储俊英
2024-05-06

在线演示

Html:

<div id="container" class="hidden">  <div id="flex-container">    <div class="item">item1</div>    <div class="item">item2</div>    <div class="item">item3</div>    <div class="item">item4</div>    <div class="item">item5</div>    <div class="item">item6</div>    <div class="item">item7</div>    <div class="item">item8</div>    <div class="item">item9</div>    <div class="item">item10</div>    <div id="more">...</div>  </div></div>

Css:

#container {  width: 400px;  height: 200px;  border: 1px solid red;  position: relative;}#container.hidden {  overflow-x: hidden;  overflow-y: hidden;}#container.scroll {  overflow-x: scroll;  overflow-y: hidden;}#flex-container {  width: 800px;  height: 200px;  background: pink;  display: flex;  flex-wrap: wrap;  justify-content: space-around;}#flex-container .item {  width: 150px;  text-align: center;  background: yellow;  height: 94px;  display: flex-item;}#more {  display: block;  position: absolute;  top: 160px;  right: 10px;  z-index: 5;  width: 80px;  height: 30px;  background: green;  border-radius: 5px;  text-align: center;  color: white;  cursor: pointer;}

Javascript:

document.getElementById("more").onclick = function() {  this.style.display = "none";  document.getElementById("container").className = "scroll";}

基本原理

  1. 在一个外部视窗Div内(名为 container),放置一个“盛放” 这两排内容块的容器(名为flex-container)。 视窗Div设置为你想要的大小,超出部分设定为自动隐藏。
  2. 浮动设定一个按钮-更多,点击后,将视窗div的超出部分行为改为 x轴方向 滚动即可。
  3. 何时展示“更多”按钮可以使用脚本判断,可自行实现: 当flex-container的宽度超过视窗div的宽度时才显示。
 类似资料:
  • 我通过以下方式通过文本找到了一个孩子。 问题是我需要单击父元素。页面上的元素是动态显示的,之前我只知道文本。是否可以对此进行编程? 我的html:

  • demo: https://jsfiddle.net/uxc68jop/ 同样的代码在demo中没有问题,在项目中第一个元素width就失效了?

  • 本文向大家介绍JavaScript如何实现元素全排列实例代码,包括了JavaScript如何实现元素全排列实例代码的使用技巧和注意事项,需要的朋友参考一下 排列 (Permutation / Arrangement) 概念 n 个不同元素中任意选取 m (m <= n) 个元素进行排列,所有排列情况的个数叫做 排列数,其值等于: ! 表示数学中的阶乘运算符,可以通过以下函数实现: 当 n = m

  • 问题内容: 假设我有以下代码: 现在,我需要在上面,但是在jsFiddle中,您可以看到child元素呈现在before之前。 如果您删除 类 或 ,则一切正常。这是我需要的正确行为: http //jsfiddle.net/ZjXMR/1/ 如何在不删除页面的情况下执行此操作? 问题答案: 这是不可能的,因为子级的设置与父级的堆叠索引相同。 您已经通过从父级移除z-index来解决该问题,将其保

  • 急求!子元素设置了float:left,为什么是浮动到父元素的父元素(part1)上,而不是浮动到父元素(box1)上?想让这个子元素和学院新闻同行应该怎么办? 这是那个子元素 这是那个子元素 这是整体:

  • 本文向大家介绍JavaScript和jquery获取父级元素、子级元素、兄弟元素的方法,包括了JavaScript和jquery获取父级元素、子级元素、兄弟元素的方法的使用技巧和注意事项,需要的朋友参考一下 最近工作中总遇到取各种父啊子啊兄弟姐妹啊,每次都得查,这次整理个全乎的~ 先给大家上干货: 【js的获取方式】 【jQuery的获取方式】