掌握与CSS隐藏卷轴的艺术
#css #网络开发人员 #tailwindcss #uidesign

介绍

滚动条是Web浏览的重要组成部分,为用户提供了视觉提示,以浏览超过视口的内容。

但是,在某些情况下,您可能需要隐藏滚动条以创建更清洁,更简约的设计或自定义用户体验。

在本机移动应用程序中,滚动条通常不可见,从您的网站上删除它们可以使其具有更类似于本机应用程序的感觉。在本文中,我们将探索使用CSS隐藏卷轴的各种技术。

在本文中,我们将探讨使用CSS隐藏滚动条的技术背后的算法。了解基本原则将使您能够在各种情况下应用该技术。此外,我们还将提供一个实用的示例,该示例由Tailwind CSS(一种流行的公用事业 - 第一CSS框架,可以通过提供用于造型元素的预定类别的类别来实现快速开发。

通过深入研究算法并展示了用尾风CSS展示一个例子,您将对如何通过隐藏滚动条来了解如何实现类似本地应用的感觉。因此,让我们潜入并探索此技巧背后的算法,然后是使用Tailwind CSS的实施示例。

算法

  • 使用特定高度创建组件,可以说x像素,然后将overflow-x属性设置为auto。这样可以确保如果内容水平溢出,则会出现水平滚动条。
  • 将组件用Div包裹,并将包装器Div的高度设置为x像素。
  • 将包装器Div的overflow属性设置为hidden。这隐藏了超过包装师高度的任何内容
  • 通过y像素来增加组件的高度。
  • 将匹配的y像素应用于组件。这样可以确保组件底部有足够的空间可容纳增加高度而不会触发卷轴。

通过遵循以下步骤,滚动条将消失,因为内容不再溢出包装器div。组件底部的填充物补偿了增加的高度,从而导致隐藏的卷轴效果。

此技术对于创建视觉上吸引人的设计很有用,而无需滚动式滚动条。它提供了平稳且无缝的用户体验,同时允许在必要时水平滚动内容。

建立可滚动列表

我已经建立了使用Vite作为构建工具的新React应用程序。作为应用程序的一部分,我创建了一个简单的<List />组件。尽管此博客的目的不是要研究构建可滚动列表,但我想提供代码供您参考。请在下面找到代码段。

列表组件

function List({ hiddenScrollBar }: { hiddenScrollBar?: boolean }) {
  return (
    <ul
      className={classNames(
        "flex gap-4 px-4 py-8 overflow-x-auto sm:gap-8 sm:px-8 md:px-12 md:gap-12",
        hiddenScrollBar && "h-56",
        !hiddenScrollBar && "h-52"
      )}
    >
      {images.map((image) => {
        return <ImageCard {...image} />;
      })}
    </ul>
  );
}

想象力组件

function ImageCard({ src, alt }: Image) {
  return (
    <li className="overflow-hidden bg-gradient-to-br from-gray-50/30 to-gray-300 via-gray-100/50 shrink-0 rounded-xl">
      <img
        src={src}
        alt={alt}
        className="object-cover aspect-[7/5] h-full w-full"
      />
    </li>
  );
}

export default ImageCard;

图像类型

export type Image = {
  src: string;
  alt: string;
};

注意
classnames是一个NPM软件包,可帮助我们有条件地为元素设置classNames。可以简单地做到这一点,以添加有条件的classNames

    className = {`flex gap-4 px-4 py-8 overflow-x-auto sm:gap-8 sm:px-8 md:px-12 md:gap-12 ${hiddenScrollBar ? "h-56" : "h-52" }`}

结论

用CSS隐藏卷轴提供了一系列可能性,以增强用户体验或实现特定的设计美学。

尝试这些技术,以在您的网络项目上创建无缝且引人入胜的滚动体验,从而使它们具有类似于本地应用的感觉。

您是否找到了有关与CSS隐藏滚动条有关的文章?如果是这样,请通过大拇指表示支持!不要忘记喜欢并分享,以帮助他人发现这些方便的技术,以在其网站上获得清洁和本地应用的感觉。与我们互动,让我们知道您的想法!

您可能会在github上找到完整的源代码。 here是一个相同的工作演示。

快乐黑客