IE and Portal Standards/Quirks Mode Evolution: The newer versions of IE pose many rendering issues/challenges which affect EP rendering. There are so many complications and solutions around this subject that it’s really hard to deal with.

So I decided to learn this subject and make some order in all this mess – so that I’ll know how to handle the variety of issues that come to our door here at support. In this blog I will share some of these issues with you.

I used kind of childish graphics – but I think that they demonstrate my points nicely.

So here’s an historical review of the evolution of the standards/quirks issues:

     1.  In the beginning –old IE versions

 

 

The older versions of IE (such as IE6, IE7) ran only in quirks mode. The portal rendered everything in quirks mode with no issues. Applications running in the portal were not strict about standard syntax and they lived happily within IE – which wasn’t strict about syntax either.

Then IE with standards mode arrived and evolved and the portal had to deal with rendering issues…

     2.  IE8 presents standards mode

 

Problem

 

IE8 and above presented standards mode rendering. For IE8 and IE9 the default mode is quirks, but if the administrator configured all the browsers in an organization to run in standards mode, the portal wouldn’t be rendered well.

 

Solution

Enforce IE to run the portal in quirks mode by changing the document mode.

 

How? We added an iView to all framework pages. The iView adds parameter to the header and tells IE to render in quirks mode.

This iView has to be added to every non-standard framework page for the portal to be rendered correctly.

More Details
 
  1. Note: 1458799 – Limited supportability for IE8 and above in the Portal
  2. Note: 1787647 – Browser Document Mode iView hides the portal content area – a fix to a regression from note 1458799
  3. Blog: Browser Document Mode – How to set the IE Compatibility View from server side.

 

And peace is restored…

 

 

 

 

 

     3. SAP presents UI5 applications

 

 

Problem

In recent years SAP introduced a new UI technology for SAP applications called SAP UI5. UI5 applications are written in standards mode and require standards mode rendering, while the portal runs only in quirks mode. Standards and quirks can’t run together on the same page.

Solution

 

Run standards-mode applications in a separate window which opens in standards mode.

 

How? Set the “Launch in New Window” property of the iView to “Display in separate headerless portal window (standards mode)”. This navigation mode, as its’ name implies, tells the iView to open in a new window and sets the HTML header to standards.

 

More Details
 
  1. Note: 1737445 – Internet Explorer standards mode rendering for EP
  2. SCN: Launching portal applications in Internet Explorer standards mode rendering – This blog presents a detailed “how-to” for configuring the new navigation mode.

 

 

And the smile is back…

 

 

     

 

     4. IE10 and IE11 presents QME mode – quirks mode is not really quirks anymore

 

 

 

 

Problem
 

From IE10 the values that were previously used for rendering pages in quirks mode (Emulate IE7/Emulate IE8) are now rendered in QME (Quirks Mode Emulation). In this QME mode there are slight differences in some values that the browser returns and the portal again is not rendered well.

 

 

Solution
 

Use another value (IE=5, IE=EmulateIE7 ) to enforce the “old” quirks mode.

 

How? Change the “Browser Mode” property value of the “Browser Document Mode” iView to IE=5

 

 

 

   

 

      5. IE11 run in standards mode by default

 

 

 

Problem
 

When a new window is opened by an application in IE11, the new window is opened in standards mode by default (before IE11, the new window was opened according to the parent window’s mode). If the application that is opened in the new window doesn’t support standards mode – it will be rendered incorrectly.

 

 

 

Solution

 

Enforce IE11 to render the newly-opened page in the correct rendering mode.

 

How? Check the document mode of the parent window before opening the new window, and enforce the parent’s mode on the child.

 

 

 

And again:

 

     6. IE11 presents itself as Mozilla

 

Problem

According to Microsoft documentation, the IE11 user agent string was changed to be compatible with modern browsers. It returns the following string: “Mozilla/5.0(Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko.”

This string was not familiar to the portal, and the portal recognized IE11 as if it was Mozilla. Due to that, the X-UA-Compatible string which changes the document mode to quirks was not sent to the browser, causing rendering issues.

 

Another instance of this problem appears in HTMLB applications.

HTMLB APIs also check for the UserAgent of the browser, and like the Portal – the HTMLB code recognized IE11 as Mozilla, and as a result upload wrong sources to the browser, and the controls don’t function as expected.

 

Solution

 

Familiarize the portal with the new user agent string as an IE11 user agent.

 

How? Add this new user agent string to the “user agents” dictionary of the portal.

And we’re smiling again…

 

     7. Standards mode Web Dynpro applications

 

 

 

Problem

Some WD ABAP/JAVA applications started running standards by default (for example – HCM). Because the Portal enforces quirks mode, these applications have rendering issues when they run in the portal. The result is bad rendering of the applications.

 

 

Solution

Enforce the application to run in quirks mode.

How? Add a parameter (SAP IE parameter) to the application URL which tells the application in which mode it should run. For quirks it would be ie=EmulateIE8” and for standards ie=Edge”.

 

This works for all ABAP applications except for SAP Transaction iViews (SAP GUI for HTML) which receive the application parameters in another format, so the sap-ie parameter is not aggregated to the URL as expected.

 

In newer portal SPs all of this happens automatically (see note 1814711) and the portal knows what to send to every destination.

 

But! Previous to the versions mentioned in the note, you had to set the SAP IE parameter manually for all applications, and for SAP Transaction iViews you had to do a special configuration according to note 1970427.

 

 

 

More Details

 

Side effect note to 1753544:

 

 

 

And finally:

 

 

 

8. iViews running in standalone mode (with no framework page)

 

 

Problem

 

There are scenarios that Portal AI iViews are opened in new window directly, means: some application navigate to the URL of the iView without using the navigation APIs.

 

Examples for this are: previewing an iView (from the content management), BI launcher – launches BI iViews directly.

 

Since there is no framework page – there is no direction for the browser in which document mode to be opened, so the browser opens in the default mode. In IE11 the default mode is “Edge”, and hence there are rendering issues for iView that needs “Quirks” rendering.

 

Solution

 

Add the meta-tag for document mode indication (either standard or quirks) in the head of the iView HTML

 

How: The correct value will be detected by a new property on the iView, which indicates whether the iView should be running and quirks mode or standard mode.

 

More Details
 

I wrote an extensive blog about this topic which explains the issue and the solution for it: Rendering issues when running portal iView with no Portal framework (standalone)

 

There are few notes for this issue:

  1. 2012705 – BI iView’s are not render correctly when using Internet Explorer 10 and above.This note solves the issue for BI iViews only (the property “DefaultDocumentMode” is added only to BI iView template.
  2. 2098706 – iView rendered corruptly when using IE10 and above when executing it directly or from headerless window This note extends the solution for all AI iViews
  3. 2163649 – More scenarios of opening an iView directly (standalone) with IE10 and above causes rendering issues (continuation of note 2098706) This note fixes a regression from note 2098706

 

 

 

 

These are all of the issues that I’m aware of at the moment. I hope that this blog made some sense in all the confusion around the portal and IE.

 

I want to end this blog with some good news.

You were probably thinking “why don’t they just adjust the main framework pages in the portal to be compliant with standards mode? This would solve many of the issues mentioned here!”

 

Well… we are! In the next SPs of 7.31 (SP14) and 7.40 (SP9) the Ajax Framework Page will support standards mode!

You can read the blog that my colleague Matan Mizrahi wrote about the Ajax Standards Framework page: Ajax Framework Page in IE standards mode and the note which describe the framework page is: 2001910 – AFP Standards mode support.

 

 

 

 

 

 

New NetWeaver Information at SAP.com

Very Helpfull

 

 

User Rating: Be the first one !