IE CSS padding-left - это только заполнение первой строки текста - PullRequest
0 голосов
/ 28 июля 2011

Я просматриваю свои таблицы стилей, пытаясь сделать мой CSS для IE дружественным, и по какой-то причине у меня возникла проблема с отступом слева. Это только применение отступа к первой строке текста в моем теге span. Когда текст переходит к следующей строке, он проходит полностью влево внутри элемента span.

(невозможно отобразить снимок экрана в целях NDA)

Браузер: IE7

CSS:

#rightContent .rightNav a,#rightContent .rightNav a:visited{
  color:black;
  display:block;
  width:92px;
  padding-right:12px;
  height:35px;
  background:url("../images/nav_off.png");
}
#rightContent .rightNav span{
  display:table-cell;
  vertical-align:middle;
  height:28px;
  padding-left:13px;
  font-size:9px;
}

HTML:

<li>
  <a href="">
    <span>This text is too long.</span>
  </a>
</li>

Ответы [ 2 ]

1 голос
/ 28 июля 2011

IE7 не поддерживает display: table-cell: http://caniuse.com/css-table

Вам придется найти альтернативную технику, хотя бы для IE7.

Попробуйте добавить *float: left к span - будет применяться только к IE7 и ниже. Возможно, это будет «достаточно хорошим» решением проблемы.

Похоже, вы используете display:table-cell; vertical-align:middle для вертикального центрирования. Если абсолютно необходимо иметь это в IE7, это возможно, не прибегая к JavaScript, но это задница.

0 голосов
/ 28 июля 2011

Это похоже на вопрос, заданный здесь: Почему IE7 не распознает мои стили заполнения css для тегов привязки? Я не совсем уверен, почему это происходит, похоже, это ошибка IE,Я бы предложил обернуть ваш текст в что-то другое (тег div или p), или просто поместить текст прямо в тег a, и если вам нужны специальные стили для него, просто укажите тег aкласс.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...