Often developers confusing regarding the following IE modes. Simply I explained below what does, each one.

Browser Mode:
It is an identifier of browser version which is used in code.
Client Side:
Javascript: navigator.userAgent
Server Side:
PHP: $_SERVER[‘HTTP_USER_AGENT’];

Document Mode:
This is only renedering the page using IE engine.

Compatibility Mode:
This is changing the browser mode and document mode to lower version i.e IE7. This is mostly creating a problem in production environment in IE.

Edge Mode:
> Developer can force document mode to Edge. Means, IE automatically changed to highest version of browser.
> It is very useful for fixing the compatability mode issue.
> Anyway, developer can not force browser mode. So still your apps gets problem if you ae checking with IE versions in code level.

HTML:
<meta http-equiv=”X-UA-Compatible” content=”IE=edge”>
PHP:
header(“X-UA-Compatible: IE=Edge”);

Quirks Mode:
> If you are not mention doctype, then your browser gets old browser engine and some of the functionality will not works fine in your app.
> Use standart doctype <!DOCTYPE html>

Conclusion:
> Use doctype <!DOCTYPE html>
> Add X-UA-Compatible to edge
> Both mode (Browser mode & Document mode) should same in your testing scenarios if edge mode not enabled.