Attached is a web page. Why do I get little squares in windows explorer?

For some reason I get small squares in windows explorer.  Don't know why.
I have attached the code for one of the webpages.  Please  note that I am a complete novice at writing html code.  You can see this page on my website
http://www.columbiaboatalarms.com/contact.htm
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<title>Contact information for Columbia Boat Alarms
</title>
<meta http-equiv="Content-type" content=
"text/html; charset=us-ascii">
<meta http-equiv="Content-Language" content="en-us">
 
<meta name="description" content=
"Contact information for Columbia Boat Alarms, Inc.">
 
    <link href="css/cssfrommytestsite.css"
          media="screen"
          rel="stylesheet"
          type="text/css">
 
<link href="css/mymenu.css"
          media="screen"
          rel="stylesheet"
          type="text/css">
 
 
 
<script type="text/javascript"><!--//--><![CDATA[//><!--
 
sfHover = function() {
	var sfEls = document.getElementById("mymenunav").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);
 
//--><!]]></script>				
					
					
  </head>
  <body>
    <div id="mainwrap">
      <div id="header">
        <a name="TopofPage"</a>
        <p>
          <img class ="header" src="images/columbiaboatalarmslogo.jpg"
             alt="Columbia Boat Alarms Logo">
					<br/>
          <br/>
          <br/>
        </p>
        <form target="paypal"
              action="https://www.paypal.com/cgi-bin/webscr"
              method="post">
          <input type="hidden"
                name="cmd"
                value="_s-xclick"> <input type="hidden"
                name="encrypted"
                value=
                "-----BEGIN PKCS7-----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-----END PKCS7----- ">
           <input type="image"
                src=
                "https://www.paypal.com/en_US/i/btn/btn_viewcart_SM.gif"
                border="0"
                name="submit"
                alt=""> <img alt=""
                border="0"
                src=
                "https://www.paypal.com/en_US/i/scr/pixel.gif"
                width="1"
                height="1">
        </form>
      </div>
			
			
			<!-- BEGINNING OF MENU -->
			
 <div id="listmenu">    
			
   <ul id="mymenunav">
		<li><a href="index.htm">Home</a></li>
	    <li><a href="#TopofPage"><b>Boat Alarms</b></a>
            <ul>
              <li><a href="model101.htm"><b>Model 101</b></a></li>
              <li><a href="model201.htm"><b>Model 201</b></a></li>
              <li><a href="model301.htm"><b>Model 301</b></a></li>
              <li><a href="model401.htm"><b>Model 401</b></a></li>
            </ul>
          </li>
          <li>
            <a href="#TopofPage"><b>Alarm Options</b></a>
            <ul>
              <li><a href="model101options.htm"><b>Options for Model 101</b></a></li>
              <li><a href="model201options.htm"><b>Options for Model 201</b></a></li>
              <li><a href="model301options.htm"><b>Options for Model 301</b></a></li>
              <li><a href="model401options.htm"><b>Options for Model 401</b></a></li>
            </ul>
          </li>
          <li>
            <a href="#TopofPage"><b>Alarm Manuals</b></a>
            <ul>
              <li><a href="pdf/model101ownersmanual.pdf"><b>Model 101 Owner Manual</b></a></li>
              <li><a href="pdf/model101installationmanual.pdf"><b>Installation Manual for Model 101</b></a></li>
					    <li> </li>
					    <li><a href="pdf/model201ownersmanual.pdf"><b>Model 201 Owner Manual</b></a> </li>
              <li><a href="pdf/model201installationmanual.pdf"><b>Installation Manual for Model 201</b></a></li>
              <li> </li>
              <li><a href="pdf/model301ownersmanual.pdf"><b>Model 301 Owner Manual</b></a></li>
              <li><a href="pdf/model301installationmanual.pdf"><b>Installation Manual for Model 301</b></a></li>
					    <li> </li> 
              <li><a href="pdf/model401ownersmanual.pdf"><b>Model 401 Owner Manual</b></a> </li>
              <li><a href="pdf/model401installationmanual.pdf"><b>Installation Manual for Model 401</b></a></li>
            </ul>
          </li>
          <li>
            <a href="#TopofPage"><b>About Us </b></a>
            <ul>						
              <li><a href="contact.htm"><b>Contact Us</b></a></li>
              <li><a href="guarantee.htm"><b>Guarantee and Returns</b></a></li>
							<li><a href="pdf/faq.pdf"><b>FAQ's</b></a></li>
            </ul>
          <li>
            <a href="Boat Alarm Canvas Snap.htm"><b>Alarm Sensors</b></a>
					<ul>
						<li><a href="Boat Alarm Canvas Snap.htm"><b>Canvas Snap Sensor</b></a></li>
						<li><a href="boathatchsensor.htm"><b>Hatch Sensor</b></a></li>
						<li><a href="pressuremat.htm"><b>Pressure Mat Sensor</b></a></li>
						<li><a href="cablewrap.htm"><b>Cable Wrap Sensor</b></a></li>
						<li><a href="pdf/pirinstallationmanual.pdf"><b>PIR motion detector</b></a></li>
          </ul>
        </ul>
				
      </div>
			<!-- END OF MENU -->
			
			<div id="contentarea"		
           class="clearfix"
           style="width: 774px; height: 698px">
        <div align="right">
          <br/>
          <p align="left">
             
          </p>
          <form name="_xclick"
                target="paypal"
                action="https://www.paypal.com/us/cgi-bin/webscr"
                method="post"
                id="_xclick">
            <input type="hidden"
                  name="cmd"
                  value="_cart"> <input type="hidden"
                  name="business"
                  value="me@mybusiness.com">  <input type=
                  "hidden"
                  name="display"
                  value="1">
          </form>
          <div align="center">
            <table border="0"
                   cellspacing="0"
                   width="774"
                   bgcolor="#FFFFFF"
                   cellpadding="0">
              <tr>
                <td width="12"
                    bgcolor="#666666">
                   
                </td>
                <td width="26">
                  <img border="0"
                      src="images/tl.gif"
                      alt="top left corner"
                      width="26"
                      height="25">
                </td>
                <td>
                  <p align="center">
                     
                  </p>
                </td>
                <td width="26">
                  <img border="0"
                      src="images/tr.gif"
                      width="26"
                      height="25">
                </td>
                <td width="8"
                    bgcolor="#666666">
                   
                </td>
              </tr>
              <tr>
                <td width="13"
                    bgcolor="#666666">
                   
                </td>
                <td width="26">
                   
                </td>
                <td style=
"background-repeat: repeat; background-attachment: scroll; background-position: 0px 0px">
 
<p align="center" style="line-height: 125%; margin-top: 0px; margin-bottom: 0px; color: #336699; text-align: left; font-size: large; font-weight: 700;">
				Contact Columbia Boat Alarms</p>
				<br /><h4>For easy to install boat alarm systems to help protect your boat's security and it's valuables from an intruder.</h4>
<hr class ="orange"/>
<br />
<table style="width: 100%" cellpadding="0" cellspacing="0" >
					<tr>
						<td style="width: 336px">
						<p style="line-height: 125%; margin-top: 0px; margin-bottom: 0px">
						<img border="0" src="images/protectedboat.jpg" width="300" height="140" style="vertical-align: middle; text-align: center; float: right"></p>
						</td>
						<td style="font-size: medium">
						<p align="center" ><font color="336699"><b>Columbia Boat Alarms <br />
						P.O. Box 2227<br />
						710 Kelley Road<br />
						Columbia Falls, MT 59912
						<br /><br />
						Our e-mail is:</b></font></p>
						<p align="center" ><b>sales@columbiaboatalarms.com</b></p>
						</td>
					</tr>
				</table>
				<br />
				<hr class ="orange"/>
	<br />
					</p>
					<p align="center" style="line-height: 125%; margin-top: 0px; margin-bottom: 0px; color: #336699; text-align: left; font-size: large; font-weight: 700;">
				About Columbia Boat Alarms</p>
				<p class="gallerytext" >&nbsp;<p class="gallerytext" >Columbia Boat Alarms, Inc. is 
					located in northwestern Montana where it manufactures and 
					sells security alarms for boats.&nbsp; We offer four 
					choices for your boat security against an intruder.&nbsp; A new four zone alarm system. A Simulated boat 
					alarm which uses a blinking LED to make it appear that
					your boat is protected by a boat security alarm.  Your third
					choice is our	Standard boat alarm system which uses wireless
					communication between the sensor transmitter and the boat alarm control
					to reduce the amount of wiring required.
					And fourth, we offer our Best boat alarm system which is a fully wired system.
					&nbsp; All our boat alarm systems are 
					activated or de-activated remotely with a key-fob remote 
					control and operate on 12 volts DC.<br />
					Don't miss our new cable wrap sensor.
					
					</p>
<br />
<hr class ="orange"/>
<p align="center"><b>(Questions? Call Francis
406-249-0640) &nbsp;&nbsp;  MST 8:00AM to
5:00PM</b></p>
<h4 align="center">Columbia Boat Alarms, Inc.</h4>
<hr class ="orange"/>
<br /><br />
 
 
 
 
<FORM METHOD="LINK" ACTION="index.htm">
<INPUT TYPE="submit" VALUE="Go Back To Home Page">
</FORM>
</p>
<br /><br />
</div>
 
<td width="26"> </td>
<td width="8" bgcolor="#666666"> </td>
</tr>
<tr>
<td width="13" bgcolor="#666666"> </td>
<td width="26"><img border="0" src="images/bl.gif" width="26"
height="25"></td>
<td style="text-align: center; font-size: xx-small">Copyright
2008 &#169; Columbia Boat Alarms Inc, All rights reserved.</td>
<td width="26"><img border="0" src="images/br.gif" width="26"
height="25"></td>
<td width="8" bgcolor="#666666"> </td>
</tr>
<tr>
<td width="13" bgcolor="#666666"> </td>
<td width="26" bgcolor="#666666"> </td>
<td bgcolor="#666666"> </td>
<td width="26" bgcolor="#666666"> </td>
<td width="8" bgcolor="#666666"> </td>
</tr>
</table>
</div>
</div>
</div>
</div>
</body>
</html>

Open in new window

rosse_fAsked:
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

mdiehly64Commented:
Hey rosse_f:

I don' see any little squares, but I can give you ad idea of why you migh be seeing them.

The little squares you are seeing are placeholders for pictures.  When your browsers looks for the pictures specified in the HTML code by the "<img src=" tag, the browser is told by the web server that it cannot find the file specified in the tag.

This can also happen if you have mixed content on your page.  That is, some https, and somte http.  If an "https page" has an http reference, a warning will appear on your browser stating that there are unsecure items on the page.  If you click "no" to NOT display the unsecure items, then those items (e.g. pictures references in http) will appear as placeholders, or X's.  

If you have had this happen before, and clicked "Don't show me this warning again", then you would not see the dialog box, and just see the page with Xs.

0
rosse_fAuthor Commented:
I see that I did not get all the html code included, but it is on the website.
0
abelCommented:
For someone who's considering him(her)self a complete novice, these pages look pretty good!

To resolve your problem, change the encoding into UTF-8. The following line:

<meta http-equiv="Content-type" content="text/html; charset=us-ascii">
should become:

<meta http-equiv="Content-type" content="text/html; charset=utf-8">
The us-ascii charset is the most limited in existence and only allows english text (i.e., no é, ï, æ etc). Things like a euro sign or even some quotes you copied from Word, will become little squares if you instruct the browser to explicitly interpret your page as us-ascii.

UTF-8 on the contrary is a Unicode encoding and understands just about any character in existence. Still, a font on the client's computer must have these characters, but in the majority of cases and as long as you don't write chinese, you do not have to worry about it.

Now I have one question: when I view your pages, I do not see any blocks. Where are they? Can you post a screenshot?
0
Big Business Goals? Which KPIs Will Help You

The most successful MSPs rely on metrics – known as key performance indicators (KPIs) – for making informed decisions that help their businesses thrive, rather than just survive. This eBook provides an overview of the most important KPIs used by top MSPs.

abelCommented:
Ah, the small squares can indeed, of course, also be (temporarily) unfound images. I tried your website, but is all looks pretty good. Where should we click on to see the wrong layout?
0
rosse_fAuthor Commented:

mdiehly64
Thanks for your comments. The little squares do not show up with the Gecko mode.  They only show up in the Explorer Mode. and they don't seem to be related to the image scr tags.
0
rosse_fAuthor Commented:
abel,
I changed the meta tag to your suggestion.  It did not solve the problem, it changed the little squares to little diamonds with question marks in the Gecko mode.
used this meta:
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
I am attaching a snagit view of part of the webpage showing the little squares.
rosse_f
little-squares.jpg
0
rosse_fAuthor Commented:
I wonder if it is something in windows explorer 8, in that I've not seen this until recently.
rosse_f
0
abelCommented:
aha, the little square are not the squares you would see inside the text if a certain letter is not available (it is still a very good thing you moved from that awkward us-ascii though). This indeed does look different. Let's check some new browsers, hold on (PS: are you viewing it yourself online or from a local directory?).
0
mdiehly64Commented:
The little square turn out to be &#65533; in your source code.  I'm not sure where this cropped up.

To solve the problem, replace all occurrences of &#65533; with &nbsp; and you should be fine.
0
abelCommented:
That character is pretty odd if it is indeed there: http://www.fileformat.info/info/unicode/char/fffd/index.htm. I can see it too, but only in the IE8 browser. It seconds my original idea that the little square is indeed a character that cannot be represented.

The replacement character is a special character and is normally not present in your data. Same here: it is not present in your data, so you do not need to try to track it down and remove it (see here for some notes on why that is: http://en.wikipedia.org/wiki/Unicode_Specials#Replacement_character).

Instead, the character that is on that spot and that cannot be shown, should either be removed or replaced with something more suitable.
0
mdiehly64Commented:
I just said that....lol
0
abelCommented:
So, why is it going wrong? I must admit, I am not 100% certain, and yet here I post, even before being certain. This may become a bit too technical, but I post it regardless as it is the fruit of my research ;-)

A couple of things show up when researching this issue with your page:

  1. The problem is local to IE8 only
  2. You serve your pages with Apache and the content type is set to "text/html", not "text/html; charset: utf8" (this is true for the HTTP headers as for the content type in the meta http-equiv element)
  3. The pages are served in Unix format (line-ending of unix type)
  4. The elements that contain this replacement character, only contain whitespace and the 0x0A linefeed character (the one Unix places at the end of lines)
  5. The problem disappears when serving from windows, both the testpages (one with your original Unix endings and one with the charsets fixed and with Windows line endings)
  6. When you save the file locally (use Save As and the As WebPage Complet) the problem remains.
There are a couple of things you can do to try to remedy this, here are some ideas:
  1. Fix the content-type header to include the charset=utf-8 part as well (Apache configuration)
  2. Fix the content-type header inside the HTML (meta http-equiv)
  3. Save the file with Windows line endings
  4. Remove the whitespace newlines in the offending cells
This is clearly not a bug on your side. The HTML, XHTML and XML specs all state that all line ending need to be normalized (that means: whether they are Windows, Unix, Max or even EBCDIC line endings, they should be interpreted as a single line ending: 0xA). So this is a new bug in IE8, congratulations for finding it. Let's see if we can find a workaround (try 1-4 above first).

-- Abel --
0
abelCommented:
> I just said that....lol

I commented on your comment, sorry for the confusion. Credit for finding the &65533; are all yours and put me in the right direction (note that it is not the character entity that is bugging here, the particular character is not there at all, so your "replace all with..." will not work here, see also my last post).
0
mdiehly64Commented:
abel:

I beg to differ.  It's not the character &65533; that is the issue, it's the actual text "&65533;" that is there.

Here is what I did:

1.  Downloaded the page to my desktop
2.  Opened the page by double clicking the htm file on the desktop (IE 8)
3.  Saw the "boxes" on the page.
4.  Opened the htm file in notepad
5   Search replace "&6553;" with "&nbsp;"
6.  Saved the file
7   Opened the page by double clicking the htm file on the desktop (IE 8)
8  "boxes" gone
0
abelCommented:
Update: just managed to mimic your situation. It was NOT the Unix style line endings (which would be disastrous), instead, it appears to be the character 0xA0 (easily confused with 0x0A, which is exactly what happened: I mixed them up).

I found this by doing what I should've been doing all along: run your page through the validator to see if there are any errors. This is the report:

         Sorry, I am unable to validate this document because on line         287         it contained one or more bytes that I cannot interpret as         us-ascii         (in other words, the bytes found are not valid values in the specified         Character Encoding). Please check both the content of the file and the         character encoding indication.              The error was:          ascii "\xA0" does not map to Unicode        
Though that last sentence is not 100% correct, the message in fact says that 0x0A is not part of US-ASCII. It is neither part of UTF-8 (which is why my suggestion didn't work: by changing to UTF-8, you also need to save it as UTF-8, see my earlier comment, where I didn't make that clear). But it is part of CP1252, the codepage of Windows. And I bet that's where the page was edited (perhaps even in Word, which might be the cause of the hidden non-breaking space, which is usually not inserted like that by HTML editors).

So, to put it simple, there are two solutions, the 1st is the best, the 2nd is the easiest:
  1. Remove all 0xA0 references, they have no bearing at all in your document. If you need content that is not visible, use &nbsp;. Then, change your charset to utf-8 and make sure that your editor saves in UTF-8 (in fact, if you do so, you don't really need to remove all the 0xA0 references anymore, but having them away is neater and clearer)
  2. Change the charset in the meta http-equiv to "CP1252". This will work instantly (see 2nd solution)
PS: after fixing, your page still contains quite some errors. My suggestion is to fix those, as it will prevent hard-to-solve bugs to pop up. (one such: <a name="TopofPage"</a> should be <a name="TopofPage"></a>)

-- Abel --
0
abelCommented:
> Downloaded the page to my desktop

the point is, by downloading the page to your desktop, IE (or the browser you used) changed the document, and replaced the characters for you, replacing 0xA0 with the REPLACEMENT CHARACTER. Instead, use "save link as". You will not find that "&65533;" string then anymore.

Note that the Unicode replacement character, FFFD, is only used for replacing a character that is not representable. In this respect, IE proofs more standard compliant then Firefox.

The intriguing bit is that we were all looking through IE, but using Firefox, which is so kind as to "guess" the meaning of the author and just overrides the requested codepage, you can get the same behavior by clicking View > Character Encoding > User Defined (which will take the actual definition of the page, which is US-ASCII). This will look like in the screenshot.

ScreenShot310.png
0
abelCommented:
(I said: )
> the message in fact says that 0x0A is not part of US-ASCII.

oops! There I make that mistake again. It says: 0xA0 is not part of US-ASCII (not 0x0A, which is valid and is a linefeed)
0
abelCommented:
(forgot to follow-up on this one from the OP)> it changed the little squares to little diamonds with question marks in the Gecko mode.

that is correct. Somewhere in all that detail above, it explains that the 0xA0 character is not a valid UTF8 byte sequence, and hence it is displayed using a little diamond with questions mark (that is the default way of telling the user "I don't understand this character, so I just show a diamond with a question mark").

Use one of the two solutions in #24460318 and you should be all set (and you can skip all my detailed blabla, if you don't need that ;-).
0
mdiehly64Commented:
I would still maintain that there is an easier way.

1.  Open the page in IE8
2.  Save the page on your desktop
3.  Open the page as a text file with notepad
4.  Search replace "&6553;" with "&nbsp;"
5.  Save the file
6.  Replace your old file with this new one.
7.  Now, all the places that had that character have been eradicated, and replace with spaces.

Problem solved!
0
abelCommented:
Interesting point and intriguing you call that "easier" ;-) That's seven steps for each page, against one step for all pages with my suggestion (cp1252).

It is not &6553; but &65533;, two totally different characters (typo?). If you are saving the page like that you are not saving the original document, and you will have to do that for every page. And you don't fix your erroneous editor, so are you suggesting that every time the page is changed, it is opened / saved from IE and then reworked an re-uploaded? (btw: I don't manage to save it in such a way that the page displays &65533;, which is half-legal HTML anyway because &65533; should not occur in HTML)

If you work again with your normal editor, the problem will occur again. With other editors it may happen too if you copy data from Word or OpenOffice. Staying with encoding us-ascii is always a mistake, using cp1252 is a direct solution (put it in html meta tag) and going over to utf8 is the solution for the long run.

-- Abel --
0
mdiehly64Commented:
It's a typo. Your condesending tone is really annoying.

I agree that this solution works well for only one page.  You've flooded this question with enough data that you deserver the 500 points just for effort.  You might want to tone it down a notch...lol.  
0
abelCommented:
I don't mean or want to be condescending, apologies if I am. I liked the question and the research and I usually share my thoughts (sometimes speaking too quickly, I know). I do consider using &nbsp; instead of 0xA0 a much clearer choice for blind-filling a <p> or a <td>, but I was also looking for a quick (and at first: dirty) solution, plus a long-standing one.

Points should be equally shared, that's not the point ;-)

(still wondering how several posters managed to see the &65533; html entity, or, other way around, why I don't. Tried with IE7 and 8, none whatsoever).
0
mdiehly64Commented:
It appears to me that the &65533; is placed into tables to ensure that the cell of the table appears.  Whatever editor is being used to create the web page is placing an odd character in the table to hold its format.

If you have a table with <tr><td></td></tr>, the cell won't appear.  If you place a character there like:

<tr><td>&nbsp;</td></tr>

then the cell appears, with nothing in it.  I think this is what is going on.  The editor is filling the cell with something else that can't be rendered, therefore placing character placeholders there that are interpreted differently depending on your browser.

The fix is to find out why the editor is placing that character there in the first place. IMHO
0
abelCommented:
Well, the odd (or funny?) bit is: the 0xA0 (or \xA0, &#xA0; &#160;) is exactly the same as non-breaking space &nbsp; (see NBSP at WikiPedia and the CP1252 code table at WikiPedia). Yet everybody knows usualy what's meant with &nbsp; (it is recognizable/readable and used for spacing like in your last post), but the 0xA0 from CP1252 (windows default and Ctrl-space in Word) is invisible in most editors.

The &65533; is indeed used for anything that cannot be recognized and in US-ASCII, the 0xA0 cannot be recognized, which explains why this happens here.

One more thing (to the OP), to see the effect of changing the codepage and why it is the way it is, you can click View > Encoding > Western European (Windows). The squares will disappear immediately.

ScreenShot312.png
0
abelCommented:
@mdiehly64: may I ask you something, purely out of curiosity? What do you click to see this &65533;? I mean, I understand what the repl char is, but save as / view source / edit with notepad: none give me this character... Do you use plugin or extension?
0
mdiehly64Commented:
I couldn't see the character until I downloaded IE8.  I installed it right "out of the box", and saw the character immediately.  I went to "Vew Source", and tracked it down, and there it was.  I the simply saved it to my desktop, and could see the character.

You can see the place for the character on any page by selecting the area in question. You can see the selection highlight that exact area, and then skip to the next area. That's where I isolated it.

It seems to me that the "editor" in question is placing these characters in a table where there is nothing to go in that cell.  Furthermore, if you are stating that MS Word does this, perhaps this content was created in Word, and saved as HTML...
0
abelCommented:
Strange, I did the same (well, I mean, the installation is still fresh).

Your last statement seems quite right, in that it replaces unknown characters with the unicode replacement character U+FFFD (that is appears inside a td has nothing to do with "view source'). The code of View Source is not equal to the page that is actually served to HTTP (it is indented, corrected etc). Use "Save page as" for the real source.

I find it quite odd that "view source" does not view the real source, but that's not the first time MS takes over certain things or fills in where they shouldn't... ;-).

Have you seen the three pages I created and put online? I mean, are they for you also without blocks when they need be? (seems we are running this thread now.... where's the OP heading?)
0
rosse_fAuthor Commented:
Fellows you are way beyond me.  I did however change the the following:
<meta http-equiv="Content-type" content=
"text/html; charset=cp1252">
<meta http-equiv="Content-Language" content="en-us">
It has gotten rid of the little squares, even if I don't have a clue why.  It has caused some additional oddities with my menu but these are not as bothersome as the squares.
0
abelCommented:
> even if I don't have a clue why.

Instead of repeating what I said above, which may not help you at all, may I ask you what HTML editor you are using? Maybe I can help you prevent this kind of problems in the future...
0
abelCommented:
PS: glad it worked! ;-)
0
abelCommented:
Btw, if you plan on not having this kind of errors in the future, i'd like to suggest this an excellent read that doesn't assume prior knowledge of charsets/codepages from the famous Joel Spolsky and is both entertaining and informative to read: http://www.joelonsoftware.com/articles/Unicode.html
0

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
rosse_fAuthor Commented:
I am using html-kit as an editor.  I cannot put in words how much I appreciate your efforts.
0
rosse_fAuthor Commented:
Thank you, you are truly a master.  I'am sure you can see what I meant when I said that I was a novice.;
0
abelCommented:
Thanks for the compliment and the feedback ;-)

HTML kit supports native UTF-8 support (according to their homepage video). They are also quite standards-minded. I don't know where the setting is (i don't use HTML Kit), but switching to UTF-8 (not in code, but from the editor) should prevent such problems in the future.
0
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
Web Development

From novice to tech pro — start learning today.