There are quite a few questions here on SO about the following meta tag not being HTML5 compliant and therefore will not validate when using <!DOCTYPE html>:
<meta http-equiv="imagetoolbar" content="no">
I also know this tag is specifically for one purpose alone: hiding the toolbar that appears when you hover your mouse over any image in Internet Explorer.
However, I could not find out in exactly which versions of Explorer this is applicable. When I Googled it, most results only mention IE6, but these threads/pages were posted back in 2004. I'm wondering if that's because the feature was dropped in IE7+.
I do not care about IE6, but if this meta tag is applicable to IE7, IE8, IE9, etc. I'll need to decide if I want to find an alternative method.
Exactly which versions of Internet Explorer enable the annoying Image Toolbar feature that is disabled via the meta tag above?
Apparently, the Image Toolbar was only a feature in IE6. It was replaced with the contextual menu (right-click) in subsequent versions.
IE6 is dead so I won't be concerned about not using this meta tag any longer.
Related
I'm having very strange problem with Internet Explorer 7 and 8. For example if I have on my page:
<meta http-equiv="X-UA-Compatible" content="IE=8" />
after the head tag. Consequently, writing to textboxes is very difficult(its cursor blinking very fast and its text appears in 1-2 seconds) and also checkboxes, radiobuttons are also very difficult to choose. I changed it to:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7; IE=EmulateIE9" />
and issues were resolved. But another one was appeared: dropdowns are behaving very unpredictable, for example, if I choose an option from the options, and if I want to change it again, its menu popup getting closed so I'm able to choose that option after 3-4 attempts.
All of them are working fine on IE9's IE7 and IE8 modes.
I've googled around, but I could not found anything. Maybe I couldn't explain to the google what I'm wanting.
How can I solve this problem?
In general, it makes sense to use IE=edge value to force most modern rendering/functioning mode of IE. Otherwise, more modern versions of IE are forced to emulate behavior of older version including its specific bugs.
Answer to my own question is explained here: Internet Explorer 7,8 content type in meta tag .
Here is the link: http://www.youtube.com/watch?v=VKyK_MDRxZI (one minute length)
I'm currently working on a site that has uses the Emulate IE7 meta tag like this:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
As far as I know and as far as I've googled this tag also addresses IE9, forcing it to go into IE7 compatibility mode.
However I noticed that one of the devs on the project is viewing the page in IE9-mode, not in compatibility mode.
How does this work? Is compatibility mode the default setting in IE9, when the Emulate IE7 meta tag is set? Would one have to manually change a setting in IE9 to bypass the Emulate IE7 meta tag?
The Developer Toolbar in IE9 (and IE8) allows you to change the browser mode-- including forcing display using the IE9 rendering engine.
For more information, read this MSDN article: http://msdn.microsoft.com/library/dd565628(VS.85).aspx#browsermodes
I have been reading around the subject of using document compatibility meta tag to web pages.
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE8">
I am a little confused which content value is appropriate/the consensus to use for a xhtml transitional doctype, and then progressively to HTML5 doctype.
We are still supporting IE6, IE7 so would IE=EmulateIE8 be the most suitable.
Can anyone help???
What Rob said. Supporting various IEs has nothing to do with compat mode. The X-UA-Compatible header simply makes the IE the site is viewed on to use the latest, most modern layout engine that it has if you set content="IE=edge" IE9 has all IE 8, IE 7, IE 6, and quirks mode supported. IE10 will be supporting IE9 and below as respective engines to render on. So, if you set content="IE=6" it means that particular IE is supposed to use IE 6 engine to render the site - which completely defeats the purpose of using a modern browser.
In HTML5 Boilerplate, we also add chrome=1 so if Chrome Frame is installed, that site will take advantage of that and render the site like it is rendering on Chrome.
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
is the one you want to use but, so early this morning, I can't recall the reasoning, but it's the one we use everywhere.
With all the various forms of this and combinations of versions of IE, I believe there are something in the hundreds of varieties of coding for IE. Ain't life grand?
If you are talking about creating new web pages for use on the public Internet, my advice would be to use an HTML5 doctype or other strict doctype and no X-UA-Compatible meta tag. This would be equivalent to one with IE=edge, by the way. This is for web pages compatible with all versions of IE.
You can add the X-UA-Compatible meta tag to an existing page that is only compatible with IEn and lower if you don't have the time or inclination to update it to support the latest version(s) of IE right now. In that case you can use IE=n, where n is the latest version of IE that the page works on. IE versions later than n will go into "IEn mode" and render the page as IEn did. Note that n cannot be less than 7, as that is the first version to support this system. There is no real point to using IE=EmulateIEn on an actual page, that is only useful for when you are sending a blanket header to an entire site via http, instead of altering individual pages. In that case, EmulateIEn would go into "IEn mode" only if a strict doctype was on the page, and into "quirks mode" otherwise.
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
This is a very cool piece of code that forces Chromeframe or latest rendering engine. It can even be sent throught the http headers if you want the html to validate. But with this comes a doubt for me. I use IE8 in compatibility mode to test my websites for IE7 (either clicking the "sheet-of-paper" icon next to the URL box, or by activating "browsing mode" in developer tools). So my question is:
Does compatibility mode still renders webpages as IE7, or does the X-UA instruction blocks my intention?
Im worrying that I think ive checked my pages in IE7 and it turns out what im seeing it's not really what a native IE7 would show....
Thanks for your comments.
Anything you do in developer tools overrides the headers and meta tags. Here's a flowchart which explains it all:
If IE7 compatibility is really important to you, don't use IE7 mode in IE8/9/10 to test it. Use a virtual machine with a native IE7. IE7 mode in IE8/9/10 doesn't behaves exactly the same as a native IE7. What you worry about is true even if Chrome frame isn't installed.
I have a gwt application with various layoutpanels. My layout works fine with all browsers except IE9. The layout is completely broken. Text appears everywhere, images at the bottom of the page or just shown for a 3/4, etc. I have recompiled my app with the newest version of gwt 2.3 but it didn't change anything. Any suggestions? Thanks in advance. Here an image with the broken background:
It is very strange that in IE9 something is broken and NOT in the other browsers.
Try this:
-correct the issues for IE9 and your other target browsers
-then see if in the other browsers you continue seeing everything ok (probably you will have problems with IE6 and IE7 so then what I would do is to fix them with a hack)
So what I recommend is to beging working with the highest version of the browsers and THEN fix the older ones. Do the inverse way...=)
If this doesnt help you, could you attach us some code?
A workaround to your problem might be to add the "X-UA-Compatible" meta tag to your HTML to tell IE to render in a different mode. For example, to tell IE9 to always render in IE8 mode:
<meta http-equiv="X-UA-Compatible" content="IE=8" />
There are many useful articles regarding this meta tag