CSS 箭头在 jQuery SlideUp 或 SlideDown 动画期间隐藏

2024-01-12

我有一个使用 CSS 创建的顶部带有箭头的 div:

.arrow_box {
    position: relative;
    display: none;
    background: #88b7d5;
    border: 4px solid #c2e1f5;
    padding: 20px;
    margin-top: 100px;
    width: 300px;
}
.arrow_box:after, .arrow_box:before {
    bottom: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}

.arrow_box:after {
    border-color: rgba(136, 183, 213, 0);
    border-bottom-color: #88b7d5;
    border-width: 30px;
    margin-left: -30px;
}
.arrow_box:before {
    border-color: rgba(194, 225, 245, 0);
    border-bottom-color: #c2e1f5;
    border-width: 36px;
    margin-left: -36px;
}

为了显示这个 div,我使用了一个简单的$('.arrow_box').slideDown();jQuery 动画。问题是,当 div 动画时,箭头被隐藏,然后一旦动画完成,箭头就会突然显示。我希望箭头在动画过程中可见。

箭头显示使用:before and :after伪元素,所以我想也许 jQuery 在动画期间使用伪元素,但情况似乎并非如此。

这是显示问题的 jsFiddle:http://jsfiddle.net/m9s9ouok/ http://jsfiddle.net/m9s9ouok/


jQuery 的slideDown() uses overflow:hidden以防止内容在对元素高度进行动画处理时溢出。

我通过强制元素的溢出可见(通过使用 !important)并添加隐藏溢出的内部元素,取得了成功。

$(function() {
  $('a').click(function(e) {
    e.preventDefault();
    $('.arrow_box').slideDown(2000);
  });
});
.arrow_box {
  position: relative;
  display: none;
  background: #88b7d5;
  border: 4px solid #c2e1f5;
  padding: 20px;
  margin-top: 100px;
  width: 300px;
  overflow: visible!important;
}
.arrow_box .inner {
  max-height: 100%;
  overflow: hidden;
}
.arrow_box:after,
.arrow_box:before {
  bottom: 100%;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}
.arrow_box:after {
  border-color: rgba(136, 183, 213, 0);
  border-bottom-color: #88b7d5;
  border-width: 30px;
  margin-left: -30px;
}
.arrow_box:before {
  border-color: rgba(194, 225, 245, 0);
  border-bottom-color: #c2e1f5;
  border-width: 36px;
  margin-left: -36px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#">Reveal</a>

<div class="arrow_box">
  <div class="inner">
    content
    <br>content
    <br>content
    <br>content
    <br>content
    <br>content
    <br>
  </div>
</div>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CSS 箭头在 jQuery SlideUp 或 SlideDown 动画期间隐藏 的相关文章

随机推荐

  • Netbeans:如何在 NullPointerException 上中断?

    在 netbeans 中调试 java 程序时 我希望调试器停止在导致 NullPointerException 的行上 以便我可以检查那里的变量 我相信我必须在该行设置的断点上使用条件 但条件的语法是什么 谢谢您的帮助 转到调试 gt 新
  • 如何修复 Github Pages 上的 HTTP 404?

    Here https github com roine p1 tree gh pages是我的 GitHub 存储库gh pages分支 一切看起来都不错 我有我的index html 我的 CSS JS 和图片文件夹 但是当我访问http
  • chrome 和 firefox 中的图像损坏在 safari 中正常工作

    我的徽标在 Safari 中显示 但在 Chrome 中显示为损坏的链接 并且在 Firefox 中根本不显示 a href index html img src images logo 01 png a 我已经重新上传了很多次 甚至尝试过
  • 合并包含 Scala 中公共元素的集合的集合

    我想在 Scala 中实现一个函数 给定一组 Int 集合 该函数将合并任何包含一个或多个公共元素的包含集合 例如 给出 def mergeSets sets Set Set Int Set Set Int val sets Set Set
  • 将 C# 应用程序的引用添加到未使用 /clr 编译的 DLL?

    我正在使用 Visual Studio 2008 构建一个包含两个项目的解决方案 一个 C 控制台应用程序和一个 C DLL 我希望应用程序使用 P Invoke 从 dll 调用函数 因此 我尝试添加 dll 作为对 C 应用程序的引用
  • 创建日历事件时返回奇怪的错误消息

    我正在使用 Node js Google 客户端 API 创建一个 google 日历活动 我请求使用以下对象通过该活动创建一个会议 var conferenceData createRequest requestId uuid confe
  • 安卓。 getHistorySize 和 getHistoricalX/Y

    我已经覆盖了onTouchEvent 方法在我的View类 并试图处理EventMotion ACTION MOVE 我使用以下代码 if event getAction MotionEvent ACTION MOVE historySiz
  • 是否可以在两台机器上使用相同的 ssh 私钥/公钥对来访问 git 存储库?

    我最近设置了一个内部 git 存储库服务器 并安装了 gitosis 作为管理工具 并将其启动并运行 只读访问可通过 git 协议获得 写访问可通过使用 ssh 公钥的 gitosis 获得 我有一位开发人员已被授予使用在其桌面工作站上生成
  • 如何指定自定义 libc++

    我已经构建了 libc 并且想在编译程序时使用它 所以我有类似的东西 clang stdlib libc libc so main cpp 但这不起作用 在构建应用程序时如何使用我的自定义构建的 libc 此信息来自关于 libcxx 的
  • iPhone TCP 连接

    我想在iPhone和PC之间建立tcp连接 在 PC 上 QTspServer 正在运行并工作 已与其他客户端应用程序进行测试 这是我在 iPhone 上使用的连接方法 IBAction connectToServer id sender
  • 为什么没有像 MSG_WAITALL 这样的标志用于发送?

    旗帜MSG WAITALL可用于recv 这要求recv阻塞直到满足完整的请求 这意味着recv直到达到请求的数据量 由参数指定 才会返回len 已收到 除非发生错误或连接已关闭 为什么这样的标志不适用于send也 我认为这对于发送非常有用
  • 最好的基于 jquery 的灯箱/弹出对话框?

    我正在寻找一个基于 jquery 的弹出对话框 我们将使用它 显示静态内容页面 使用条款等 联系我们页面 已经使用 jquery 表单插件进行 ajax 提交 显示全尺寸的照片缩略图 有人可以推荐一款可以满足上述所有要求并且相当轻量级且易于
  • 如何确定 EventLog 是否已存在

    我正在使用以下行创建新的事件日志 new eventlog LogName Visual Studio Builds Source Visual Studio 我想每次都运行它 因为如果我从新计算机运行构建 我仍然希望查看事件日志 问题是
  • asp.net webforms ajax 更新 gridview

    我们有一个包含大量信息 100 行或行和列 的网格视图 我们需要提高其性能 目前 为了解决一些性能问题 我们使 gridview 没有编辑模板 而是双击一个单元格将弹出一个可用选项的下拉列表 该选项是使用 webmethods 检索并使用
  • jekyll:检查是否没有帖子

    如何查看帖子里是否没有帖子 posts folder 到目前为止 我已经尝试过 if site posts null p No posts yet p endif and if site posts nil p No posts yet p
  • 从 VB 转换为 C#

    我的任务是将解决方案从 VB 转换为 C 有 22 个项目和数百个类 所以我决定研究转换器 我最终选择了 SharpDevelop 这是一个带有转换器的 IDE 我在每个项目上都运行了它 并且有很多错误需要修复 但我应该能够检查它们并希望找
  • Sequelize 增量函数返回错误

    尝试增加我的数据库中模型实例的整数字段 这是相关代码 models Options findAll where PollId poll id name option to update then option gt option incre
  • 删除网址中的主题标签,刷新 f5 时出错(angularJs-cordova)

    我对 AngularJs 中的路由器有一些疑问 我使用了 Angular UI Router 但是当使用 locationProvider 删除 url 中的主题标签 时出现错误 如何解决这个问题 在我的模块中 config functio
  • 使用 JNI 从 C++ 调用 JAVA 方法,无参数

    请耐心听我说 我是一名 iPhone 开发人员 而整个 Android 这让我有点困惑 我有一些从 cocos2d x CCMenuItem 调用的 C 方法 因此 根据文档 我无法发送任何参数 我需要使用 android 浏览器打开一个
  • CSS 箭头在 jQuery SlideUp 或 SlideDown 动画期间隐藏

    我有一个使用 CSS 创建的顶部带有箭头的 div arrow box position relative display none background 88b7d5 border 4px solid c2e1f5 padding 20p