【问题标题】:Overflow: hidden seems to break filepond溢出:隐藏似乎破坏了文件池
【发布时间】:2019-04-19 02:16:16
【问题描述】:

我正在尝试让 Filepond 正常工作,但我的 CSS 中的这一行似乎破坏了它 - ul 选择器中的 overflow: hidden;

我尝试对页面的整个部分进行 nuking,直到 Filepond 工作,将 css 归零,最后是 ul {} 中的上述行。我可以清除其他所有内容,只留下那条线,而 Filepond 仍然坏掉,所以我确定这是问题所在,但我不知道如何解决。

我尝试使用 Chrome 的 Inspector 功能查看运行时页面源代码,但找不到溢出。

然后我使用 Notepad++ 的 search-in-files 功能彻底搜索 Filepond 文件中的“溢出”,但无法与 ul 一起找到它。我能得到的最接近的是 JS 文件中的 const 命名列表。不知何故,我不认为这是相关的,但我知道为什么。如果需要,将在此处添加代码。

有趣的是,溢出在更新日志中出现了几次,曾经说过它修复了“列表溢出无法正确呈现的问题”。 (v 2.2.1)

Chrome v73(最新) Filepond 最后更新于 4/15/19

filepond_problem.html

<!DOCTYPE html>
<html lang="en">
<head>
    <title>Filepond Problem</title>
    <meta charset="utf-8">
    <link rel="stylesheet" href="problem.css"> <!--remove this line and it works-->
    <link rel="stylesheet" type="text/css" href="filepond/dist/filepond.css">
    <script src="filepond/dist/filepond.js"></script>
</head>

<body>
<input type="file" mutliple/>
<script>
    // Get a reference to the file input element
    const inputElement = document.querySelector('input[type="file"]');
    // Create the FilePond instance
    const pond = FilePond.create(inputElement);
</script>
</body>
</html>

problem.css(在我伙伴的一个小文件中)

ul {
    overflow: hidden;
}

当我选择要上传的文件时,无论是拖放还是使用“浏览”对话框,它所做的只是删除“拖放文件或浏览”。它没有显示我的文件,没有 x 删除它,什么都没有。它只是变成一个空的、浅灰色的盒子。

当您删除包含问题.css 的行时,它的作用与their site 上的描述相同。好吧,减去缩略图,但这是意料之中的,因为我还没有启用它。

【问题讨论】:

  • ul {overflow: hidden},顾名思义,隐藏了所有溢出元素的内容,在这种情况下,Filepond 在显示文件的面板上有一个ul 元素;如果您使用该规则,您将隐藏所有 ul 元素中的所有内容,如果您访问他们的站点,并选择相同的元素并添加相同的规则,则会发生同样的事情,所以解决方案就是避免使用它css 规则,或者更具体的类

标签: html css filepond


【解决方案1】:

输入位于.filepond--drop-label 并根据附加到它的样式,当您上传文件时,有一些javascript 会隐藏它。相同的 javascript 可能会显示照片,它位于下一个 div 中,.firepond--list-scroller。照片和内容确实出现在列表中,所有图标也是如此,所以现在它们是隐藏的。你说你接下来会做照片部分,好吧,在这种情况下,你只需要一起做,因为它们有不同的部分相互影响。

查看他们的 ul .filepond--list,我看不到您所做的 ul{overflow:hidden;}(上传照片之前和之后)。所以我不确定它来自哪里,它可能是你在不知不觉中添加的东西。不需要那行代码。

【讨论】:

  • 嗯,不,ul{overflow:hidden;} 位来自我们自己的 CSS,而不是 Filepond 的,抱歉。不过,如果可以的话,我想避免删除它。
  • 如果您不想删除自定义 CSS 中的 ul {overflow: hidden} 规则,请尝试赋予它更多的特异性,例如 ul.my_class {overflow: hidden},以便它仅 影响具有my_class 类的ul 元素,这样Filepond 的所有元素都不会受到影响
  • 会的,只要我能抓住我的搭档,弄清楚它的用途是什么。我从来都不擅长 CSS,但我只是尝试了 overflow: visible 在几个 .filepond--list 选择器上,它什么也没做。我认为 ul 比类更具体?
  • 不,只是 ul 不太具体,因此适用于更多元素,在这种情况下,适用于 all ul 元素,无论它们是否有类或身份证等;它将适用于所有这些......如果你使用一个类,你会更具体,如果你使用一个元素标签加上一个类(例如ul.my_class)它更具体,因为你告诉规则只适用到具有类my_class的元素ul
  • 是的,我就是这么想的,但是当我添加 overflow: visible to filepond--list {} 时,它仍然坏了。不过我刚才又试了一次,现在它可以工作了,哈哈……我第一次错过了什么,但是谢谢。
猜你喜欢
  • 2012-04-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-25
  • 2012-07-25
  • 1970-01-01
  • 2017-04-22
相关资源
最近更新 更多