PHP前端开发

使用 CSS 使 div 水平滚动

百变鹏仔 3个月前 (09-19) #CSS
文章标签 水平

在 CSS 中,我们可以通过设置适当的“over-flow”属性值来使 div 水平滚动。

首先,让我们了解为什么我们需要使 div 水平滚动。例如,父div元素的宽度为500px,或者屏幕尺寸为500px。现在,div 元素的内容是 1500px。因此,如果我们不让父 div 水平滚动,就会破坏应用程序的 UI。因此,我们可以使其可滚动,用户可以滚动查看不可见的内容。

语法

用户可以按照以下语法使 div 水平滚动。

.scroll {    width:<Width_of_div_element>;    overflow: scroll; }

在上面的语法中,我们使用了“width”和“overflow”属性来使 div 水平滚动。如果我们不指定元素的宽度,“overflow”属性不会受到影响。

立即学习“前端免费学习笔记(深入)”;

示例 1

在下面的示例中,我们创建了 HTML div 并添加了一些文本内容。在 CSS 中,我们为 div 元素指定了“500px”固定宽度。此外,我们还设置了“scroll”作为溢出属性的值。

在输出中,用户可以观察到,当文本宽度大于类名为“scroll”的 div 的宽度时,div 元素中出现水平滚动条。

<html><head>   <style>      .scroll {         margin: 5px;         padding: 5px;         border: 2px solid blue;         width: 500px;         overflow: scroll;         white-space: nowrap;         height: 50px;      }   </style></head><body>   <h3>Using the <i> overflow-x: scroll </i> to make a div horizontally scrollable using CSS</h3>   <div class = "scroll">      The United States of America (USA) has the largest GDP in the world. In 2020, the nominal GDP of the United      States was $21.43 trillion. China is the second-largest economy in the world, with a nominal GDP of $14.34      trillion in 2020. Other countries with large GDPs include Japan, Germany, and the United Kingdom.   </div></body></html>

示例 2

在下面的示例中,我们使用了“overflow: auto”CSS 属性来使 div 水平滚动。此外,我们还为 div 元素指定了固定宽度。 ‘auto’和‘scroll’值之间的主要区别是,当我们使用‘scroll’时,div始终保持可滚动,而当我们使用‘auto’时,div元素在发生溢出时变得可滚动。

<html><head>   <style>      .scroll {         border: 2px solid green;         width: 500px;         overflow: auto;         white-space: nowrap;         height: 50;      }   </style></head><body>   <h3>Using the <i> overflow: auto </i> to make a div horizontally scrollable using CSS</h3>   <div class = "scroll">      This is a sample text to put in the HTML div element. You can scroll this div horizontally.   </div></body></html>

示例 3

在下面的示例中,我们使用了“overflow-x: auto”CSS 属性来使 div 水平滚动。我们已在父 div 内添加了单个子 div。

在输出中,用户可以观察到,由于我们使用了“auto”值,最初外部 div 是不可滚动的。当我们点击“添加 div”按钮时,它会使用 JavaScript 将子 div 添加到父 div,并且当您添加 5 到 7 个子 div 时,它会自动变得可滚动。

<html><head>   <style>      .scroll { border: 2px solid green; width: 500px; overflow-x: auto; white-space: nowrap; display: flex; flex-direction: row; }      .inner { max-width: 250px; height: 100px; background-color: red; border: 2px dotted blue; margin: 3px; }   </style></head><body>       <h3>Using the <i> overflow-x: auto </i> to make a div horizontally scrollable using CSS</h3>   <div class = "scroll">      <div class = "inner">         Inner Div      </div>   </div>   <button onclick = "addDiv()"> Add div </button></body><script>   function addDiv() {      // add the div element to the scroll div      let scroll = document.querySelector('.scroll');      let new_div = document.createElement('div');      new_div.classList.add('inner');      new_div.innerHTML = 'Inner Div';      scroll.appendChild(new_div);   }</script></html>

示例 4

在下面的示例中,我们使用 CSS 设计了滚动条。首先,我们使 div 可以水平滚动以显示滚动条。之后,我们设置滚动条的背景颜色。此外,我们还设计了滚动条轨道和滑块。

在输出中,用户可以观察到好看的滚动条,并根据需求进行设计。

<html><head>   <style>      .scroll {         width: 500px;         overflow-x: auto;         overflow-y: hidden;         white-space: nowrap;         border: 1px solid red;         scrollbar-width: thin;         scrollbar-color: grey;      }      /* styling the scroll bar */      .scroll::-webkit-scrollbar { width: 10px; height: 10px }      .scroll::-webkit-scrollbar-track { background: darkgray;}      .scroll::-webkit-scrollbar-thumb { background: grey; border-radius: 10px; }   </style></head><body>   <h3>Using the <i> overflow-x: auto </i> to make a div horizontally scrollable using CSS</h3>   <div class = "scroll">      This div is horizontally scrollable. How are you? Do you like CSS? Tutorials Point is a leading Ed Tech company striving to provide the best learning material on technical and non-technical subjects.    </div></body></html>

用户学会了使用 CSS 的“overflow”属性使 div 水平滚动。在第一个示例中,我们使用了“overflow:scroll”CSS 属性。在第二个示例中,我们使用了“overflow: auto”CSS 属性。在第三个示例中,我们使用了“overflow-x: auto”CSS 属性;在最后一个示例中,我们使用 CSS 设计了滚动条。