在纯图像网址上运行时,书签小程序无法在 ie 中固定位置

发布于 2025-01-01 07:55:28 字数 424 浏览 0 评论 0原文

好吧,这是一个很长的镜头,但事情是这样的……

当 IE(8 和 9)直接导航到图像 url 时,它会在一个没有样式的简单 html 页面中呈现图像。 (如果您按 F12 打开开发工具,那么您会看到这一点)。

现在假设您有一个小书签,当在此上下文中“运行”时,必须将一个新元素插入页面,并使用 css:position:fixed; 将其放置在顶部。顶部:0;左:0;然后似乎发生的事情是元素很好地插入到 dom 中,但定位完全失败。新项目的行为就好像它是在原始标签之后“内联”一样。

事实上,所有的定位似乎都失败了。看起来几乎就像页面的“定位引擎”已关闭,但渲染引擎已打开。

所以我的问题是,在 IE 直接导航到图像 url 的情况下,有什么方法可以让 IE 正确渲染定位吗? 它运行 javascript 相对较好,css 也可以。

Okay, so this is a long long shot but here it goes...

When IE (8 and 9) navigates to an image url directly, it renders the image inside a a bare-bones html page with no styling. (If you hit F12 to get dev tools open, then you see this).

Now consider you have a bookmarklet, that when "run" inside this context, must insert a new element into the page, and position it at the top using css: position:fixed; top:0; left:0; Then what appears to happen is the element gets inserted into the dom just fine, but the positioning completely fails. The new item acts as if it is "inline" right after the original tag.

In fact, positioning all together seems to fail. It almost seems like the "positioning engine" is turned off for the page, but the rendering engine is turned on.

So my question is, in this context of IE navigated directly to an image url, is there any way to get IE to render positioning correctly? It runs javascript relatively well, and css okay too.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

冰火雁神 2025-01-08 07:55:28

对于那些可能遇到这个问题的人 - 我要做的是检测用户正在使用 IE,并检测请求的 mime 类型是某种类型的图像(不同版本的 IE 之间此 mime 类型是不同的)。当出现这个问题组合时,我抓取了浏览器已加载的图像的 url,然后将浏览器导航到我设置的一个特殊页面,导航到该页面时会将图像加载到普通网页中,然后执行我的书签代码。因此,用户最终会体验到正确的小书签功能,但浏览器中的 url 只需更改即可从我的服务器加载页面...

For those of you that might have this problem - what I had to do was detect that the user was using IE, and detect the mime type of the request was some type of image (this mime type is different between different versions of IE). When this problem combination came up, I grabbed the url of the image that the browser had loaded, and then navigated the browser to a special page I had setup that when navigated to would load the image inside a normal web page, then execute my bookmarklet code. So the user ends up experiencing the correct bookmarklet functionality, but the url in the browser just has to change to load a page from my server...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文