IE Compatibility View Problem

Started by alphacaveman, November 28, 2009, 12:43:11 AM

Previous topic - Next topic

alphacaveman

Hi,

I already know the issue exists and that if I click on compatibility view that it will fix it for me. But what about the people who are trying to post on my forum but can't because of that issue and don't know to click on the compatibility view button? Odds are they'll just leave because they can't post. Is SMF working on some sort of fix for the problem? No shot at SMF because I love SMF but I don't see it happening at all with other forum software. Is a fix forthcoming?

Thanks.

Antechinus

What problem, exactly? Just saying "problem" is rather like asking for support because "my forum doesn't work".

MrPhil

#2
Insert this meta tag in the <head> section:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
It will force any IE8 to go into compatibility mode for SMF. It can be done manually in index.template.php or with a meta tag mod.

Isn't it ironic that MS was criticized for so long for not adhering to web standards, and so with IE8 they finally are standards-compliant, and now everyone has to put IE8 into IE6/7 mode to get pages to come out right?

Added: Note that the <meta> tag supposedly no longer works reliably -- MS of course broke something in later versions of IE8, so that the tag isn't processed in all cases. I don't use IE (obviously), but supposedly users can still put IE8 into IE7 emulation mode (it has to be done from the browser controls, not a page tag). The bottom line is that you should be aware that the <meta> tag solution may not work for all your visitors!

alphacaveman

Cool, thanks. That's what I was looking for assuming it works!

alphacaveman

This doesn't seem to be working. I use FireFox or Chrome and today opened IE and went to my forum and even though I added the code provided, it's still messing up by bouncing around in the post box and preventing me from posting. ::Sigh::

MrPhil

Hmm. Other people have said that it fixes the problem for them. I assumed you were having the problem on IE8... no? Have you checked your page (View > Page source) to make sure that the new tag's in there, and the fields are spelled correctly (exactly as I gave)?

alphacaveman

Yes, as best I can tell I put it just as you said. Would you please check at my forum?

MrPhil

Is this IE8 you're experiencing the problem on? I've heard vague rumors that MS keeps fooling with its code, and recent builds have broken the IE7 compatibility feature. Some people have reported success by moving the compatibility tag to the very last line before </head>. I don't use IE myself, and don't have IE8, so I can't tell you anything for sure.

alphacaveman

#8
I moved it there....but when I view the source it's showing it twice. Strange. Does SMF plan on doing anything in future versions to eliminate this issue? This issue really seems to be affecting my forum.

alphacaveman

Anyone? I can't believe this issue is just being left out there. Rather than having to put a line of code in only to see it not work, can't the problem actually be fixed within SMF? I know others are experiencing this problem because they've told me. It's disappointing.

alphacaveman

Ok, I found another forum, not related to SMF that stated the same problem with an SMF forum. It seemed they had found a solution. But I'm not much of a coder so I'm not sure how to do it. I'd certainly appreciate any help anyone is willing to provide.

What they said was:

QuoteIf you have a textarea with the width set to a percentage and you have more than enough text in the textarea to cause it to scroll then the bug can occur while you type text. While you are typing text the textarea will scroll up a few lines for each character you type. The same happens while you delete any text. This bug can be fixed by activating compatibility view, or it can also be fixed by implementing a CSS hack which is now done on ozzu.

So for instance if you have CSS specified like the following:

[css]textarea {
   height:250px;
   width:98%
}[/css]

It is very likely the bug will occur with IE8. To fix it you must set the width to be a non-percentage. You can still get it to act as if it was set to a percentage width by setting both min-width and max-width as well. So the following css code:

[css highlight=3-5]textarea {
   height:250px;
   width:500px;
   min-width:98%;
   max-width:98%;
}[/css]

Will allow to to behave as the way you intended without the bug. In older browsers that do not support min-width or max-width then the textarea will be set to a fixed width of 500px. For all other browsers though the min-width and max-width will override the width.

I'm using the Classic Theme for SMF and I don't know where to go to do this. I've looked and even tried some spots that I thought were the equivalent but it didn't work. Could anyone PLEASE spell it out for me? I'm grateful for help. Thanks.


MrPhil

The editor "textarea" size is given in rows and columns, with class="editor". That class sets a width as a percentage, which may be causing the problem. It wouldn't hurt to try the following: in Themes/default/style.css, look for
/* The main post box - this makes it as wide as possible. */
.editor
{
width: 96%;
}


and try changing to
/* The main post box - this makes it as wide as possible. */
.editor
{
width: 96%;  // this MIGHT have to be commented out
        min-width: 96%;
        max-width: 96%;
}


For the classic theme, the entry appears to be 100% rather than 96% -- do the same with 100%. Likewise for any other themes you might be using.

If that doesn't do it, I dunno. Let us know one way or the other...

alphacaveman

Strange...it still isn't working.  :(

Would someone be willing to take their browser off the compatibility view and see if their forum is doing this too? You have to be editing a post for it to do it...or so it seems.

I'd sure appreciate a solution. Thanks.

JimM

Every other member that I have helped, added the meta tag and that fixed the issue.  Did you copy it exactly as MrPhil posted it?  One thing that would need to change is the "width: 96%;".  Change that to "width:500px;" as the example states.  You may have to experiment with different values to get what you want.
Jim "JimM" Moore
Former Support Specialist

Glowbot

I have this issue too.

Please can someone tell me, what is the <head > section, and where is it located?

which one of these fixes should I do?  :o

I am using DilberMulticolour theme 1.1.11.

JimM

Quote from: Glowbot on August 12, 2010, 09:59:30 AM
I have this issue too.

Please can someone tell me, what is the <head > section, and where is it located?

which one of these fixes should I do?  :o

I am using DilberMulticolour theme 1.1.11.

Use a good text editor like notepad++ and search for the <head> tag. 

Quote from: MrPhil on November 28, 2009, 09:48:13 AM
Insert this meta tag in the <head> section:
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
It will force any IE8 to go into compatibility mode for SMF. It can be done manually in index.template.php or with a meta tag mod.

Isn't it ironic that MS was criticized for so long for not adhering to web standards, and so with IE8 they finally are standards-compliant, and now everyone has to put IE8 into IE6/7 mode to get pages to come out right?

^^^^^ this fix should do it.
Jim "JimM" Moore
Former Support Specialist

MrPhil

Note that the <meta> tag supposedly no longer works reliably -- MS of course broke something in later versions of IE8, so that the tag isn't processed in all cases. I don't use IE (obviously), but supposedly users can still put IE8 into IE7 emulation mode (it has to be done from the browser controls, not a page tag).

Advertisement: