低高度横向移动设备中的 Fancybox 缩放问题

2024-02-22

问题描述:

我在响应式页面设计中使用 Fancybox v2.1.5。我遇到的问题是较小的移动设备,它们更像是矩形而不是正方形。

当设备处于纵向并且我调用 Fancybox 时,它会显示到屏幕的宽度,并且标题文本会在图像下方换行。这不是问题,因为纵向模式下通常有很多额外的屏幕空间。

然而,当我将设备更改为横向时,Fancybox 会缩小其高度以响应较短的屏幕高度。

宽度显然也成比例缩小。由于标题框宽度也由 Fancybox 容器的宽度控制,Fancybox 容器会根据图像宽度进行调整,这意味着文本会换行得更多,并且通常会导致图像缩小更多,因为它会调整为较小的尺寸以容纳所需的空间。标题文字换行。

我曾尝试使用 Fancybox CSS 和媒体查询,但没有成功,但阅读此处的其他帖子表明您需要 javascript 功能才能有效地做到这一点,虽然我对 html 和 CSS 非常熟悉,但我对 javascript 仍然相当不稳定。

所需功能:

我希望能够测试“短”屏幕高度并格式化 Fancybox 标题,以便为图像提供尽可能多的空间。

理想情况下,这将通过在上面控制 Fancybox 标题字体大小并允许标题框延伸到容器边界之外。

任何以编码建议或向我指出我错过的其他帖子的形式的帮助将不胜感激。


你可以制作 fancybox水平地仅响应式,因此它将扩展其height根据需要,无论屏幕尺寸如何。这样图像就不会缩小(包括它们的title)以适应视口的height(尽管您可能需要向下滚动才能看到较大图像的其余部分及其title)

如果此替代方案满足您的需求,您需要在自定义初始化脚本中组合一组 fancybox 的 API 选项,例如:

jQuery(document).ready(function ($) {
    $('.fancybox').fancybox({
        fitToView: false, // won't shrink to fit in the viewport
        maxWidth: "90%", // need to explain?
        helpers: {
            title: {
                type: "inside" // can fit larger title/captions
            }
        },
        beforeLoad: function () {
            // optional:
            // get a large title from a data attribute
            this.title = $(this.element).data("caption");
        }
    });
}); // ready

关于造型title,您始终可以添加额外的 CSS 规则(加载 fancybox CSS 文件后)来设置您喜欢的样式,例如:

.fancybox-title {
    font-family: verdana, sans-serif;
    font-size: 11px;
    font-style: italic;
    color: #008000;
}

See JSFIDDLE http://jsfiddle.net/y1sdxjrz/

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

低高度横向移动设备中的 Fancybox 缩放问题 的相关文章

  • 如何使用 jest 模拟第三方库

    我正在开发一个node js应用程序使用nestjs我有一堂课叫LoggerService如下 export class LoggerService private logger Rollbar constructor this logge
  • 即使我可以监视其他方法,也无法监视事件处理程序

    我想使用 Jest Jasmine Enzyme 测试 React 中的事件处理程序 MyComponent js import React from react class MyComponent extends React Compon
  • 在为 RXJS 可观察量编写测试时,如何避免让调度程序通过我的业务逻辑?

    我发现使某些测试通过的唯一方法是显式地将调度程序传递给函数 为了便于说明 请考虑以下函数 function doStuff stream return stream delay 100 filter x gt x 2 0 map x gt
  • JavaScript 中数组的 HTML 数据列表值

    我有一个简单的程序 它必须从服务器上的文本文件中获取值 然后将数据列表填充为输入文本字段中的选择 为此 我想要采取的第一步是我想知道如何动态地将 JavaScript 数组用作数据列表选项 我的代码是
  • Javascript - 将值从下拉框传递到 Google Maps API

    我正在使用 Google 地图 API 为一家出租车公司创建报价表 目前 用户在 2 个文本框中输入出发点和接载点 API 会计算两点之间的距离以及行程费用 我正在尝试添加两个具有设定位置的下拉框 以便用户可以选择这些位置之一或使用文本框输
  • Google Chrome 106 可拖动导致元素消失

    使用拖放元素时 绝对定位元素中包含的大多数其他元素都会从屏幕上消失 如果我调整窗口大小 这些元素会出现 但在开始拖动时会再次消失 我在最新版本的 Google Chrome 106 和 Beta 版本 107 0 5304 18 以及现在的
  • 在d3.js中将2D形状转换为3D,并根据ANGULAR中的值调整高度

    我正在使用 d3 js v6 创建以下 2D 图表表示的 3D 图表 这个圆圈中有多个正方形 每个正方形都根据值分配了一种颜色 值越大 正方形越暗 现在我想将其转换为 3D 形状 其中当值变高时 只有特定正方形的高度会增加 因此结果在某种程
  • 如何在 Angular 中从父组件访问子组件?

    I have mat paginator在子组件a中 如下所示 子组件 html
  • 如何使JavaScript函数在Eclipse“大纲视图”中可见?

    我有这样的代码 但如果它在匿名函数中定义 则无法打开函数大纲 类没有问题 我该如何概述something2 请分享一些提示 我可以将所有函数标记为构造函数 但这是无效的方法 start of track event required deb
  • Twitter 嵌入时间轴小部件

    我继续下载http platform twitter com widgets js http platform twitter com widgets js And the http platform twitter com embed t
  • 当用户单击链接时,如何记录 MixPanel 事件?

    当用户单击某种类型的链接时 我试图在 MixPanel 中记录一个事件 我正在使用 JQuery 不引人注意地完成此操作 据我所知 我需要添加一个回调函数 以便在记录事件后将用户带到 URL 这是我正在使用的代码 不幸的是
  • Nodejs mysql 获取正确的时间戳格式

    我在用着mysqljs https github com mysqljs mysql得到结果后sql我变得不同TimeStamp格式如下 created at Sat Jul 16 2016 23 52 54 GMT 0430 IRDT 但
  • 数据表日期范围过滤器

    如何添加日期范围过滤器 like From To 我开始进行常规搜索和分页等工作 但我不知道如何制作日期范围过滤器 我正在使用数据表 1 10 11 版本 My code var oTable function callFilesTable
  • 三级十进制有序列表 CSS

    我有一个 html 中的三级有序列表 我想为其提供如下样式 1 Item 1 1 1 Item 2 1 1 1 Item 3 下一个 plunker 中有一个 html 示例 http plnkr co edit DqhZ5pJILTUHG
  • 在 Javascript 中减少/分组数组

    基于this https stackoverflow com a 40774906 3254598例如 我想以稍微不同的方式按对象进行分组 结果应该如下 key audi items make audi model r8 year 2012
  • 如何在 gulp.src 中使用基本正则表达式?

    我正在尝试选择两个文件gulp src highcharts js and highcharts src js 当然 我知道我可以使用数组表达式显式添加这两个表达式 但出于学习目的 我尝试为它们编写一个表达式 我读过可以使用简单的正则表达式
  • 单击列表时使用 bootstrap Dropdown 防止下拉菜单消失

    我正在使用使用引导下拉菜单 http twitter github com bootstrap javascript html dropdowns生成下拉菜单 我想防止点击菜单时菜单消失 我已经实现了以下代码 但它不起作用 知道如何修复它吗
  • 在 GWT 中,在任何主机页标记上添加事件处理程序

    我想为任何标签添加 MouseOver 事件处理程序 举个例子 我想为旧版 HTML 页面中的每个锚点页面添加事件处理程序 继GWT指南 http code google com webtoolkit doc 1 6 DevGuideUse
  • 闪亮井板宽度

    library shiny library shinydashboard ui lt dashboardPage dashboardHeader dashboardSidebar dashboardBody wellPanel tags d
  • 带显示块的SPAN

    和默认有什么区别 div 元素和默认值 span 元素与display block HTML 元素的有效性和语义存在差异 否则它们是相同的 div and span两者都被定义为通用容器 在 HTML 方面没有更深层次的含义 一个默认为块显

随机推荐

  • 与push()相反; [复制]

    这个问题在这里已经有答案了 JavaScript 的反义词是什么push method 假设我有一个数组 var exampleArray remove 我想要push 这个单词 keep exampleArray push keep 如何
  • “职称级别不一致”是什么意思?

    我在我的文档版本中收到了各种 标题级别不一致 的警告 据我所知 我有一个一致的结构 如下所示 Big Title Section Subsection 但该错误与自动生成相关 automodapi 我无法找到的文本 Classes 我怎样才
  • WP7从Tombstone恢复并返回页面

    从逻辑删除恢复时 是否有一种很好 优雅的方式返回用户所在的页面 我不确定我的应用程序是否正常工作 但我总是回到我的主页 我的应用程序设置了一个带有枢轴控件的主页 并且多个枢轴项目将导航到新页面 如果有意义的话 我的导航看起来像这样 数据透视
  • 谷歌放置自动完成API Android:边界不起作用

    我定义我的界限如下 private static final LatLngBounds BOUNDS CHENNAI new LatLngBounds new LatLng 12 8339547 80 0817007 new LatLng
  • Kubernetes 自动缩放容器

    是否可以自动缩放 docker 容器 其中包含 kubernetes 内的应用程序服务器 如 wildfly tomcat jetty 例如在 cpu 和 ram 使用或基于 http 请求 如果有一个内置功能 我找不到它 或者是否可以为此
  • 使用 PHP 实现 2 路加密的最佳方法是什么?

    我想在 PHP 中使用双向加密来加密我网站上的密码 我遇到过 mcrypt 库 但它看起来很麻烦 有人知道其他更简单但安全的方法吗 我确实可以访问 Zend Framework 因此使用它的解决方案也可以 我实际上需要双向加密 因为我的客户
  • 使用 ThreadStatic 来替换昂贵的本地变量——好主意吗?

    Update 正如我预料的那样 社区针对这个问题给出的合理建议是 衡量一下然后看看 chibacity 发布了 答案 https stackoverflow com questions 4864974 using threadstatic
  • 以编程方式在 Android 中配置第 3 方电子邮件帐户 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 禁用 JQuery 移动 UI 中的哈希更改控制器并替换为backbone.js

    我在用着jQuery 移动用户界面widgit 套件很不错 不过我也使用backbone js 它带有一个非常简洁的hashchange 控制器框架 问题是 JQuery Mobile UI 有一个内置的蹩脚哈希更改控制器 它假设您会alw
  • jQuery 缓动函数中有哪些不同的参数

    我看到 jQuery 的缓动函数位于https github com danro jquery easing blob master jquery easing js https github com danro jquery easing
  • 事务与批量查询以避免重复的 MySQL 插入

    我有一个PHP脚本 deleteAndReInsert php 删除所有行name Bob 然后插入 1000 个新行name Bob 这工作正常 最初的空表最终达到预期的 1000 行 query pdo gt prepare DELET
  • 合并数组中的对象并保留相同属性的最高值

    我有这个数组 我想合并其中的对象 null null 1 1 2 1 3 1 2 2 5 1 我考虑过使用这样的东西 var o1 a 1 b 1 c 1 var o2 b 2 c 2 var o3 c 3 var obj Object a
  • 合并到广告订单中

    我有一个看起来像这样的声明 MERGE INTO someTable st USING SELECT id field1 field2 etc FROM otherTable ot on st field1 ot field1 WHEN N
  • 获取正在运行的 java 进程的 java 版本

    我可以使用 jps 列出正在运行的 java 进程 并使用 jstack l process id 获取正在运行的 java 进程的堆栈信息 我想知道这个进程在哪个java版本上运行 有办法做到吗 我不必使用 jstack 工具 谢谢 js
  • AngularJs 将带有子集合的对象发布到 MVC WebAPI

    我正在开发一个 AngularJS 应用程序 服务 js 中的方法之一将数据发送到具有以下 C 对象结构的 Web api public class InvitationModel public string Name get set pu
  • 为什么在 Solaris 10 中,timer_create 会抛出 SIGEV_THREAD 错误?

    我写了一段使用timer create来设置计时器来调用一个线程 其中我将sigev notify设置为SIGEV THREAD 它给了我错误EINVAL 无效参数 但是当我将sigev notify设置为SIGEV SIGNAL时 代码工
  • 始终为 False Q 对象

    在 Django ORM 中 如何创建一个始终为 False 的 Q 对象 这类似于关于的问题始终为 True Q 对象 https stackoverflow com q 33517468 247696 但反之亦然 请注意 这不起作用 F
  • 检测上传的文件是否太大

    这是我的上传表单
  • C# 会内联在接口中声明的方法吗?

    如果我有一个界面 interface IMyInterface void DoSomething 和一个实现类 class MyClass IMyInterface public void DoSomething DoSomething 是
  • 低高度横向移动设备中的 Fancybox 缩放问题

    问题描述 我在响应式页面设计中使用 Fancybox v2 1 5 我遇到的问题是较小的移动设备 它们更像是矩形而不是正方形 当设备处于纵向并且我调用 Fancybox 时 它会显示到屏幕的宽度 并且标题文本会在图像下方换行 这不是问题 因