Solved

conditional statement in html not working

Posted on 2013-06-19
10
168 Views
Last Modified: 2013-06-28
I can't seem to figure out why this snippet of code is picky.  When I place it in most places within an html page, it does not work.  However I did get it to work in one seemingly random spot.  Is there something that I should add before and after to allow me to place it anywhere and work?  

The below code displays a message to non-IE users
<!-- [if !IE]> -->
		This browser is not supported! Please use Internet Explorer.  
 <!-- [endif] -->

Open in new window

0
Comment
Question by:icecom4
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 2
  • +1
10 Comments
 
LVL 34

Expert Comment

by:Paul MacDonald
ID: 39260388
To begin with, it's not formatted properly.

<!--[if !IE]>
     This browser is not supported! Please use Internet Explorer.
<![endif]-->


Also, this:
http://stackoverflow.com/questions/13785587/if-ie-not-working
0
 
LVL 83

Expert Comment

by:Dave Baldwin
ID: 39260415
Only Internet Explorer support conditional comments, all other browser ignore such things.  You will have to use javascript browser detection to inform the other browsers.

http://www.w3schools.com/js/js_window_navigator.asp
0
 

Author Comment

by:icecom4
ID: 39260436
@paulmacd
if I use the exact code you provided, both IE and Mozilla are ignoring it.

by the way I am using IE10
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 83

Expert Comment

by:Dave Baldwin
ID: 39260470
All browsers but IE ignore conditional comments, they treat them as just plain comments.  And your statement [if !IE] tells IE to ignore it.  You have to use a different method.
0
 
LVL 53

Accepted Solution

by:
COBOLdinosaur earned 500 total points
ID: 39260488
<!--[if !IE]><!-->
      This browser is not supported! Please use Internet Explorer.
 <!--<![endif]-->

Cd&
0
 

Author Comment

by:icecom4
ID: 39260608
@COBOLdinosaur

Sorry, but your code always displays the statement in both browsers...shrug?

@ DaveBaldwin
Yes, this is what I want, a statement that IE will ignore and all other browsers show the statement!
0
 
LVL 53

Expert Comment

by:COBOLdinosaur
ID: 39260709
You probably need to use javascript:

var isIE= (/MSIE (\d+\.\d+);/.test(navigator.userAgent)) ? true : false;
if (!isIE) document.write('You need to use Internet Explorer fot this page');

Or do it properly by detecting on the server and send a page with just the message instead of wasting bandwidth sending the whole page.

Cd&
0
 
LVL 53

Expert Comment

by:COBOLdinosaur
ID: 39260728
For the server side in PHP:

(eregi("MSIE", getenv( "HTTP_USER_AGENT" ) )

for ASP:

InStr(1, Request.ServerVariables("HTTP_USER_AGENT"), "MSIE")


Cd&
0
 

Author Comment

by:icecom4
ID: 39260831
not sure why, but if I place this immediately after the header and nowhere else it works!

example...
<body style="background-color: #FFFFFF; background-image: url('')">
</body></html>

<!-- [if !IE]> -->
		This browser is not supported!&nbsp;&nbsp; Use the &quot;Internet Explorer&quot; 
		shortcut on your desktop to start NextGen.
 <!-- [endif] --> 

Open in new window


sigh...that was fun...and annoying
0
 

Author Closing Comment

by:icecom4
ID: 39285068
this is the right code, but requires spaces before the dashes.  I was able to get it to work by placing in a specific place in html code.  It is also unstable, and does not always work depending on network conditions for some reason.  

I am abandoning this idea, will search for another way.
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Open dialog with server side controls in it 3 48
html / css issue / div issue. stuck, help needed 2 25
Calculating percentage 2 33
Ajax on ASP 2 42
Is your Office 365 signature not working the way you want it to? Are signature updates taking up too much of your time? Let's run through the most common problems that an IT administrator can encounter when dealing with Office 365 email signatures.
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
In this tutorial viewers will learn how to embed Flash content in a webpage using HTML5. Ensure your DOCTYPE declaration is set to HTML5: "<!DOCTYPE html>": Use the <object> tag to embed Flash content.: To specify that the object is Flash content, d…
The viewer will learn the benefit of using external CSS files and the relationship between class and ID selectors. Create your external css file by saving it as style.css then set up your style tags: (CODE) Reference the nav tag and set your prop…

730 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question