【发布时间】:2012-08-05 07:49:59
【问题描述】:
我正在寻找一种使网页适应各种屏幕设备的方法。
我的想法是构建一个代理服务器来返回客户端浏览器请求的页面的新 dom 树和 CSS 样式。
- 我可以在代理服务器 (node.js?) 上运行 javascript 来分析 dom 节点树吗?
- 还有其他方法吗?
谢谢!
【问题讨论】:
我正在寻找一种使网页适应各种屏幕设备的方法。
我的想法是构建一个代理服务器来返回客户端浏览器请求的页面的新 dom 树和 CSS 样式。
谢谢!
【问题讨论】:
您是否可以控制要适应不同设备的网页?
如果是这样,您可以为页面编写不同的 CSS 样式表,并使用媒体查询将它们应用于具有不同屏幕尺寸的设备:
编辑:因为您无法控制网页,所以我想某种代理服务器是可行的方法。
不过,构建一个适用于大多数网页的产品听起来像是一项艰巨的工作。
为了检查服务器上的 DOM,我想 node.js 可以正常工作(我没有太多的节点经验,所以我不是 100%),但大多数语言都会有一个库(或几个)允许您提供 HTML 作为文本,并取回它的 DOM 表示。例如,Python 有 lxml、Beautiful Soup 等。
棘手的一点是自动找出如何更改随机页面的 DOM 以使它们在手机上显示得更好。我不知道有什么库可以帮助您确定哪些样式适用于给定的 DOM 节点,因为只有在您呈现网页时才会变得相关,而这正是浏览器所做的。
【讨论】: