html - 专注于较小屏幕上的一个区域的 SVG
问题描述
我正在尝试为某人的显示 SVG 的库更新/添加功能。可以在此处找到该库的演示:https ://rschristian.github.io/preact-github-calendar 。来源:https ://github.com/rschristian/preact-github-calendar/blob/b51d41ac92d3b195e14a175248e4c408404830f4/src/index.tsx#L200 。它是(P)react,但主要是我链接到的 SVG(我相信)。
所以这个库是 GitHub 贡献日历的再创作,加上一些东西。目前,行为是无论屏幕大小如何,整个日历都适合父元素。因此,在较大的父母身上,它会扩大规模,而在较小的父母身上,它会缩小规模。我要解决的问题是,在手机等较小的屏幕上,将完整的日历调整到允许的宽度确实会压缩组件并使其难以阅读。
那么 GitHub 是如何做到这一点的呢?它基本上隐藏了最左边的 x%,因此只显示最近的(右侧)数据。
但这最终是我无法解决的问题:我希望日历保持动态(我想图书馆的所有者也会如此)但在较小的屏幕上它应该被切断。我相信这意味着我想在桌面+屏幕上使用视图框,但在较小的设备上使用高度和宽度以便实际切断它。我不确定这是否是正确的想法,如果是,那么如何去做。
现在我已经尝试了很多方法,我相信preserveAspectRatio="xMaxYMid slice"
这就是我想要的(https://developer.mozilla.org/en-US/docs/Web/SVG/Attribute/preserveAspectRatio)但我不能似乎让它工作。我不太了解高度/宽度、视图框和 preserveAspectRatio 是如何排列的。似乎 preserveAspectRatio 被完全忽略了,我不知道为什么。
解决方案
推荐阅读
- lamp - Bitnami LAMP 堆栈 .htmaccess 不工作
- c# - Automapper 忽略 null 值,但将空字符串映射到 null
- regex - 在 Hive 中用空替换单引号(')
- android - 如何发送 Zebra GX420d 打印机以使用 Dart 进行打印,或者如何配置 Android 的 IP?
- dart - 如何让 Dart 测试加载主文件?
- asp.net - .NET 代码在 IIS 超时响应后是否继续执行?
- c# - 我有@html.actionlink 在 mvc 中不起作用的问题
- sql - 使用函数 regexp_split_to_table
- javascript - 浏览器禁用 javascript 时禁用表单字段和按钮
- icons - sap.m.upload.UploadSet 不显示图标