技术求教,各位大佬赐教

146 天前
 lufeng666

需求:
我有一个 H5 网页,移动端 WEB 访问并使用效果良好。但是没有做成响应式布局,PC WEB 不适配。因为移动端 WEB 是竖屏的,PC WEB 是横屏的,想要改造做成自适应布局工作量有些大,如果专门为 PC WEB 做一套页面和交互,开发成本维护成本也挺高。

想法: 自己所能想到的比较好的方案就是 PC 端写个 iframe ,iframe 搞成竖屏的用来加载移动端 WEB 页面,从而解决 PC WEB 不适配的问题。

请各位大佬赐教:
有没有更低成本、效果更好的实现方式?比如某个开源框架能实现,或者某个工具能实现这样的效果?

为此我画了个想要实现的效果图。

点击查看想要实现的效果

2249 次点击
所在节点    程序员
14 条回复
lufeng666
146 天前
hhacker
146 天前
iframe 是成本最低的方案
tianhehechu
146 天前
把你项目背景和技术栈简短描述,然后把页面逐条消息贴给 ChatGPT ,让它帮你出转换成适应 PC 横屏的版本,然后你自己写个 JS 在实际访问页面时判断当前终端类型来选择跳转不同的页面即可。
murmur
146 天前
响应式适配很难的 竖屏转横屏相当于进平板模式了 那宽度

比较简单的办法是页面放大大概 25%左右,然后两边留白居中,不适配
lyxxxh2
146 天前
1. 直接竖屏风格:(推荐)
body{
width:50%;
margin:atuo;
}


2. 响应式:
正常框架都支持啊。
col-md-6
col-sm-6
...
但是已经开发好手机端,再改很麻烦。
gloye
146 天前
@media-query body{width:xx;margin:0 auto;}
kxg3030
146 天前
如果你要实现这种:
{
"data": {
"error": "Imgur is temporarily over capacity. Please try again later."
},
"success": false,
"status": 403
}
还真没什么办法,毕竟这是 json 啊
zhhbstudio
146 天前
<style>
body{
max-width: 768px;
margin: 0 auto;
}
</style>
NongNong
146 天前
是不是可以判断,是否为桌面端,是桌面端的话给 body 一个 max-width,margin: 0 auto ?
sentinelK
146 天前
iframe 确实成本最低(移动 web 不需要任何侵入性),但代价就是也是最丑陋的修改方式。(会导致 pc 端 url 和移动端不一致。)

所以最经济的方案应该是楼上几位提到的,如果是 pc 端(或者某个横向比例、分辨率阈值),就强制限制 body (或最外层 div )宽度,并居中留白。

btw:pc 横屏 <-> 移动竖屏这种跨度,我个人不建议考虑自适应。因为他并不光是页面元素布局的问题。更多是操作习惯、信息密度等设计维度的问题。
pcdoggy
145 天前
如果移动端访问效果良好,可以先确认下效果最好的最宽场景,再添加宽屏的分辨率的适配(但是移动端的操作习惯跟 pc 还是差异很大的)
Sunzehui
145 天前
套 iframe 吧,不然限制 body 的方式,你的 fixed 定位的东西都得改
Sunzehui
145 天前
@Sunzehui #12 ```javascript
document.querySelector('#app').remove()
const iframe = document.createElement('iframe')
iframe.src = location.href
document.body.appendChild(iframe)
```
NongNong
145 天前
@Sunzehui 可以用 transform 限制 fixed 在 body 内

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1060176

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX