Nano Hash - криптовалюты, майнинг, программирование

Ячейка HTML не объединяет высоту при использовании нескольких диапазонов строк

У меня есть таблица с базовой структурой, как показано ниже. Проблема в том, что когда я использую один и тот же диапазон строк для всех столбцов, высота сворачивается только до одной строки.

<table border=1>
  <tr>
    <td>1</td>
    <td>2</td>
    <td>3</td>
  </tr>
  <tr>
    <td>4</td>
    <td>5</td>
    <td>6</td>
  </tr>
  <tr>
    <td>7</td>
    <td>8</td>
    <td>9</td>
  </tr>
</table>

когда некоторые столбцы имеют диапазоны строк

<table border=1>
  <tr>
    <td rowspan=2>1</td>
    <td rowspan=2>2</td>
    <td>3</td>
  </tr>
  <tr>
    <td>6</td>
  </tr>
  <tr>
    <td>7</td>
    <td>8</td>
    <td>9</td>
  </tr>
</table>

Когда все столбцы имеют rowspan. Вот где появляется проблема. В основном ожидаемый результат состоит в том, что первая строка будет занимать две строки, а не только одну.

<table border=1>
  <tr>
    <td rowspan=2>1</td>
    <td rowspan=2>2</td>
    <td rowspan=2>3</td>
  </tr>
  <tr>
  </tr>
  <tr>
    <td>7</td>
    <td>8</td>
    <td>9</td>
  </tr>
</table>

31.03.2019

  • Нет, это не так. Строки таблицы не имеют внутренней высоты, они равны высоте их содержимого. Если вы создадите таблицу, в ячейках которой ничего нет, все строки будут иметь высоту 0 пикселей. (Это то, что происходит в вашем последнем примере с пустой второй строкой.) Поэтому, если вы хотите принудительно установить определенную высоту, задайте эту высоту явно в таблице стилей. tr {height:1.5em;} или что-то в этом роде. 31.03.2019
  • @MrLister, дело в том. Я объединяю ячейки во время выполнения, поэтому я не могу предсказать, какой будет высота. Я дал им начальную высоту, но результат тот же. Единственный способ, которым я могу это увидеть, - это если я сам вычислю новую высоту. 31.03.2019
  • @MrLister Буду очень признателен, если у вас есть какие-либо предложения, кроме расчета новой высоты ячейки. 31.03.2019
  • Нет, другого выхода не будет. И обратите внимание, ваши ячейки с rowspan по-прежнему охватывают эти строки, хотя, как сказал г-н Листер, они свернутся до своего содержимого. 31.03.2019
  • Спасибо вам обоим LGson и MrLister 31.03.2019
  • Нет предложений, извините. Пустой tr имеет высоту 0, независимо от того, участвует ли он в rowspan, принадлежащих другому tr, или нет. Было бы неплохо, если бы мы могли написать что-то вроде td[rowspan='2'] {height:200%;}, чтобы сделать ячейки с rowspan, равным 2, в два раза больше, чем у окружающих ячеек, но это не работает. Вы случайно не знаете точную высоту непустых ячеек? 31.03.2019
  • @MrLister В текущей версии я это делаю, но в следующей версии я бы этого не сделал, потому что хочу сделать его отзывчивым. Эта проблема также существует с colspan FYI. 31.03.2019

Ответы:


1

Как упомянул г-н Листер, этого можно добиться, стилизовав элементы td с помощью rowspan. но вместо использования процентов вы должны использовать em как единицу. td[rowspan='2'] {height:2em;}

Таким образом рассчитывается высота строки таблицы, если вы не укажете высоту явно

31.03.2019
  • Спасибо Метти, я попробую это позже. Дело в том. Я думал, что делаю что-то не так или что-то упускаю или не знаю. По-видимому, я должен сам обрабатывать высоту ячейки. Я прав? 31.03.2019
  • Да, ты прав. Таким образом рассчитывается высота строки таблицы, если вы не укажете высоту явно. 31.03.2019
  • Я добавляю ваш ответ как принятый ответ, так как нет лучшего способа. Я также добавил ваш комментарий для других людей, если у них такая же проблема 31.03.2019
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..