When i set the body element direction to rtl, in ie7 (compatability view in ie8), and hover over ul li , it shifts wierdly to the left by a couple of inches. a good example for this is the default asp.net mvc css (after adding direction:rtl to the body elemet. anyone know this one?
the example code:
/*----------------------------------------------------------
The base color for this template is #5c87b2. If you'd like to use a different color start by replacing all instances of
5c87b2 with your new color.
----------------------------------------------------------*/ body { background-color: #5c87b2; font-size: .75em; font-family: Verdana, Helvetica, Sans-Serif; margin: 0; padding: 0; color: #696969; direction:rtl; }
a:link { color: #034af3; text-decoration: underline; } a:visited { color: #505abc; } a:hover { color: #1d60ff; text-decoration: none; } a:active { color: #12eb87; }
p, ul { margin-bottom: 20px; line-height: 1.6em; }
/* HEADINGS
----------------------------------------------------------*/
h1, h2, h3, h4, h5, h6
{
font-size: 1.5em;
color: #000;
font-family: Arial, Helvetica, sans-serif;
}
h1 { font-size: 2em; padding-bottom: 0; margin-bottom: 0; } h2 { padding: 0 0 10px 0; } h3 { font-size: 1.2em; } h4 { font-size: 1.1em; } h5, h6 { font-size: 1em; }
/* this rule styles tags that are the first child of the left and right table columns */ .rightColumn > h1, .rightColumn > h2, .leftColumn > h1, .leftColumn > h2 { margin-top: 0; }
/* PRIMARY LAYOUT ELEMENTS
----------------------------------------------------------*/
/* you can specify a greater or lesser percentage for the page width. Or, you can specify an exact pixel width. */ .page { width: 90%; margin-left: auto; margin-right: auto; }
header
{ position: relative; margin-bottom: 0px; color: #000; padding: 0; }
header h1
{ font-weight: bold; padding: 5px 0; margin: 0; color: #fff; border: none; line-height: 2em; font-family: Arial, Helvetica, sans-serif; font-size: 32px !important; }
main
{ padding: 30px 30px 15px 30px; background-color: #fff; margin-bottom: 30px; _height: 1px; /* only IE6 applies CSS properties starting with an underscrore */ }
footer
{ color: #999; padding: 10px 0; text-align: center; line-height: normal; margin: 0; font-size: .9em; }
/* TAB MENU
----------------------------------------------------------*/
ul#menu
{
border-bottom: 1px #5C87B2 solid;
padding: 0 0 2px;
position: relative;
margin: 0;
text-align: right;
}
ul#menu li { display: inline; list-style: none; }
ul#menu li#greeting { padding: 10px 20px; font-weight: bold; text-decoration: none; line-height: 2.8em; color: #fff; }
ul#menu li a { padding: 10px 20px; font-weight: bold; text-decoration: none; line-height: 2.8em; background-color: #e8eef4; color: #034af3; }
ul#menu li a:hover { background-color: #fff; text-decoration: none; }
ul#menu li a:active { background-color: #a6e2a6; text-decoration: none; }
ul#menu li.selected a { background-color: #fff; color: #000; }
/* FORM LAYOUT ELEMENTS
----------------------------------------------------------*/
fieldset { margin: 1em 0; padding: 1em; border: 1px solid #CCC; }
fieldset p { margin: 2px 12px 10px 10px; }
fieldset label { display: block; }
fieldset label.inline { display: inline; }
legend { font-size: 1.1em; font-weight: 600; padding: 2px 4px 8px 4px; }
input[type="text"] { width: 200px; border: 1px solid #CCC; }
input[type="password"] { width: 200px; border: 1px solid #CCC; }
/* TABLE ----------------------------------------------------------*/
table { border: solid 1px #e8eef4; border-collapse: collapse; }
table td
{
padding: 5px;
border: solid 1px #e8eef4;
}
table th
{
padding: 6px 5px;
text-align: left;
background-color: #e8eef4;
border: solid 1px #e8eef4;
}
/* MISC
----------------------------------------------------------*/
.clear
{
clear: both;
}
.error { color:Red; }
menucontainer
{ margin-top:40px; }
div#title { display:block; float:left; text-align:left; }
logindisplay
{ font-size:1.1em; display:block; text-align:right; margin:10px; color:White; }
logindisplay a:link
{ color: white; text-decoration: underline; }
logindisplay a:visited
{ color: white; text-decoration: underline; }
logindisplay a:hover
{ color: white; text-decoration: none; }
.field-validation-error { color: #ff0000; }
.input-validation-error { border: 1px solid #ff0000; background-color: #ffeeee; }
.validation-summary-errors { font-weight: bold; color: #ff0000; }