Переопределение стиля выравнивания текста таблицы выравнивает атрибут

0

Я получил следующую таблицу, которая должна была сосредоточиться на моей DIV:

<table width="100%" height="100%">
  <tr>
    <td align="center" valign="middle">
      <div id="someCenteredDiv"></div>
    </td>
  </tr>
</table>

Но проблема в том, что существует глобальная таблица стилей, которая определяет:

td {
  vertical-align: top;
  text-align: left; }

Кажется, что таблица стилей переопределяет атрибут align и valign. И когда я пытаюсь переопределить стиль с помощью

text-align: center;

он ничего не меняет.

  • 0
    использовать идентификатор или класс .. они имеют больше предпочтений, чем обычные стили на основе тегов
  • 0
    Проблема заключается в центрировании div, а не выравнивании текста. Хотя возможно, что у них есть проблема с отменой настройки выравнивания текста, это все равно не сработает.
Теги:
table

3 ответа

2
Лучший ответ

Div - это элемент блока, поэтому он не может быть центрирован с помощью text-align: center. Вы можете установить его для display: inline-block; или дать ему фиксированную ширину, затем использовать margin: 0 auto;

  • 0
    Спасибо, теперь это работает. Странно то, что он работал только для блочных элементов с атрибутом align.
1

Если ваш div имеет фиксированную ширину, вы можете использовать:

margin: 0 auto;

На вашем div, чтобы сосредоточить его. Text-align будет работать только с встроенными элементами, поэтому, если ваш div не настроен на "display: inline" (или встроенный блок), он не будет центрирован.

0

Для переодевания стиля вы можете использовать! Важно следующее

td
{
text-align: center !important;
}

И для выравнивания по центру элемента div вы должны использовать margin:0 auto вместе с определенной width.

  • 0
    Это не сработает.
  • 0
    Ты прав. Я неправильно понял вопрос. Я собираюсь редактировать мой ответ. Спасибо за указание.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню