When i am checking my code with the developer tools (F12), I have seen the option Compatibility view only in IE browsers. Why don't other browsers have this compatibility view mode?
I am confused about this. Can you guys clarify, is there any specific reason for this?
Because IE is the only mainstream browser which was so screwed up in its rendering that developers had to specifically work around IE problems and deliver alternative versions of their pages just for IE. The "compatibility mode" switches between the newer standards compliant mode and the older screw-up mode.
Other browsers don't have it because they've never had an alternative screw-up mode.
As for I know, IE mostly have compatibility issues with the older versions, That's why this option is provided by Microsoft. Moreover, very soon IE will be part of history as Microsoft is launching it all new web browser Microsoft Edge. http://en.wikipedia.org/wiki/Microsoft_Edge
Related
The Chrome developer tools have a feature to change the user-agent to spoof servers enabling developers to test applications for other devices and browsers without having to leave the comfort of the Chrome browser on a desktop terminal. I assume that Chrome emulates these other browsers rather than them virtually. How standards compliant is Chrome with regard to JavaScript, CSS, and other technical browser differences? For instance, has anyone done a comprehensive test to determine if the Chrome emulation of Internet Explorer 7 and the actual Internet Explorer 7 render identical pages, pixel for pixel?
Chrome does not attempt to emulate other browsers at all when the user agent string is changed.
To verify this assertion, just use Internet Explorer-specific features, such as conditional compilation, conditional comments, ActiveX, VB Script, ... None of these function in Chrome.
If you want to get Chrome to render pages like Internet Explorer, install the IE Tab Chrome extension. An existing installation of Internet Explorer is required though, which implies that non-Windows operating systems such as Linux and Mac are not supported.
The issue can be observed here:
It doesn't work on emulated ie7 (ie9 -> developer tools).
I tried with many css settings, but probably not with all of them, as I believe there is some solution for this bug.
Jashwant's answer is essentially correct - what you're seeing is IE using the IE7 browser mode with IE9 document standard, in a real IE7 browser the Facebook Like button appears OK. The problem is with the IE developer tools.
When you first open the developer tools, they will display IE9 browser and document mode. If you change the Browser Mode to IE7, the Document Mode appears to automatically change to IE7 standards. However, if you then change the Document Mode to IE9, then back to IE7, you'll find that the Facebook Like buttons now display correctly.
Its in quirks mode. Apply a proper doctype.
And if you using developer tools,
Change document mode to ie7 standards
Recently users of my website complained about the lack of support to IE6\7.
Is there an offline tool to test if a page-HTML isn't compatible with a specif browser and where is the problem?
Where can I find a list of things I need to be aware of in order to support IE6?
Update: The problems the users describe are in the UI, <Div>are not in the right places and that kind of problems, not JavaScript issues.
I can't force the users to upgrade theirs browsers.
IE6 is an ancient browser. Tell people who complain about lack of support that it's no longer supported and they should upgrade.
There is no "syntax checking" tool to find all incompatibilities, because the problems are not in syntax but how it's interpreted. There is no way around visual testing I'm afraid.
Here are some interesting SO questions on the topic:
One fix for all IE6 problems
How are programmers tackling ie6 bugs these days?
Running Internet Explorer 6, Internet Explorer 7, and Internet Explorer 8 on the same machine
IE tester is useful for testing across version of internet explorer. It may not tell you what is wrong but you will at least be able to see / verify what users are reporting.
http://www.my-debugbar.com/wiki/IETester/HomePage
I have some offer about this for you :
Try to use Jquery more,because Jquery is compatible with most browsers
there are 3 useful addons for Mozilla : Firebug , Web Developer , IE tab
IE 9 has a developer windows that you can change your page standard into IE 8 or 7
Use syntax liek this :
<link rel="stylesheet" type="text/css" href="Styles/ie-fix.css" />
maybe this is useful dude for you :)
If your users are complaining about IE6, you should give support to IE, thats theory. BUT, if possible do as google has been doing for years, if the user is using IE6/7 or lower show some links to download newer browsers and tell them that their browser is too old.
You can use a seperate stylesheet for IE.
There is a third party software named Utilu. Utilu IE Collection contains multiple standalone versions of the browser Internet Explorer, which can be used at the same time. It has more than 10 versions of IE. But its used for viewing the web pages. This software also has firefox and chrome collections.
With all the latest browsers like IE9, FF4, ever updating chrome, etc., do we still need quirks mode?
If yes where is it useful? In which scenario?
Quirks mode is designed to allow (much) older websites to work in (comparatively) newer browsers.
New development should never be done in Quirks Mode, but Quirks Mode will stick around as long as there are still old un-updated websites that require it (ie, forever).
No. You should never use quirks mode. It ceased to be of any relevance once IE 5.0 and 5.5 stopped being used.
Those were the last browsers which did not support standards mode, so any sites which needed to include support for them would have needed to be able to work in quirks mode.
However, IE6 along with all versions of all browsers released since then supports standards mode.
Some of them still carry legacy support for quirks mode, but you shouldn't allow them to use it. (it's triggered if you neglect to include a <!DOCTYPE> at the top of your HTML code, which is why you shold always declare a doctype)
In the unlikely event that you need to support IE5, then use quirks mode. Otherwise, avoid at all costs.
If you are maintaining code that uses quirks mode then you should take the time to convert to use standards mode.
If it's a public-facing website, then using quirks mode now should not even be contemplated, as it will look hideous in a lot of modern browsers. Even if it's in a corporate environment then you I would strongly reccommend converting it to standards mode, as even IE6 users will benefit from that (if nothing else, it'll make their eventual upgrade to a newer browser less painful). The only time you won't be able to use standards mode that is if you have a client who is still stuck with IE5. But if you've got that, then you should have run away screaming already.
Quirks mode is definitely still needed in corporate environments where legacy applications are very common. That old 1998 webapp still works and we don't have money to replace it so it has to keep working.
Can somebody explain me why my site is not displaying correctly in internet explorer:
http://shortener3.info/web/
The choice of Doctype (Transitional with no URL) triggers Quirks mode, which causes browsers to emulate bugs that appeared in earlier browsers in order to cope with legacy code.
IE emulates a lot of features of IE 5.5, which was very very broken.
Use a Doctype that triggers Standards (AKA Strict) mode.
That might not solve all the problems, but it should be the first step in trying to resolve them.