Почему ширина моего <td>блока больше 50 пикселей?Если я специально скажу, что это max-width и width = 50px - PullRequest
0 голосов
/ 30 января 2019

Это мой стол:

<table style="width: 84%; min-width: 330px; margin-left: 8%; margin-top: 20px; margin-right: 8%;" cellpadding="0" cellspacing="0">
                    
                    <tr>
                        <td style="width: 50px; border-top: solid 1px #dedede; background: yellow; max-width: 50px;">
                            <img style="width: 50px; background: red" src="https://s3.amazonaws.com/co.psngr.gopublic.staging/media/product/1/fbb3f543c5c349b09b59bf19a1e6a6d9.png">
                        </td>
                        <td colspan="1" style="border-top: solid 1px #dedede; padding: 20px 10px; text-align: left; word-wrap: break-word; font-family: 'Lato', sans-serif; font-size: 16px;color: #333333; width: 50%;">
                            <b><span style="color: #24b646">3 x </span>Psngr Beacon</b><br/>
                            <span style="font-size: 14px; color: #899ba7;">Bluetooth 4 (BLE) USB iBeacon\u2122</span>
                        </td>
                        <td style="
                          width: 100px;
                          text-align: right;
                          border-top: solid 1px #dedede;
                          padding: 20px 0px;
                          font-weight: bold; color: #24b646;
                          font-family: 'Lato', sans-serif;
                          font-size: 18px;
                          letter-spacing: 0.2px; word-wrap: break-word">
                            € 74.85
                        </td>
                    </tr>
                </table>

Как видите.таблица имеет изображение размером 50px внутри, окрашенное красным.Но тогда он вдвое больше, чем картинка, даже при том, что одна и та же ширина установлена ​​на оба значения:

enter image description here

Когда я проверяю, стиль элемента говорит 50px;Но если я выделю это, то будет написано: 109x77

Я использую это для шаблонов django, поэтому не могу использовать @mediaQueries или классы.Я просто хотел заранее сообщить вам об этом

Ответы [ 2 ]

0 голосов
/ 30 января 2019

Это было вызвано некоторыми стилями двух других td элементов.Так как у вас было padding-top и / или padding-bottom на двух других, вы создали дополнительное вертикальное пространство, которое вам не нужно в первом.Кроме того, у вас изначально была ширина второго td, установленного на 50%: первый td стал шире 50 пикселей.

Я взял эти вещи в фрагменте ниже в качестве отправной точки- вы можете внести изменения в другие 2 td различными способами, чтобы первый не имел нежелательных эффектов.

<table style="width: 84%; min-width: 330px; margin-left: 8%; margin-top: 20px; margin-right: 8%;" cellpadding="0" cellspacing="0">

                <tr>
                    <td style="width: 50px; border-top: solid 1px #dedede; background: yellow; max-width: 50px;">
                        <img style="width: 50px; background: red" src="https://s3.amazonaws.com/co.psngr.gopublic.staging/media/product/1/fbb3f543c5c349b09b59bf19a1e6a6d9.png">
                    </td>
                    <td style="border-top: solid 1px #dedede; text-align: left; word-wrap: break-word; font-family: 'Lato', sans-serif; font-size: 16px;color: #333333; padding: 0 40px">
                        <b><span style="color: #24b646">3 x </span>Psngr Beacon</b><br/>
                        <span style="font-size: 14px; color: #899ba7;">Bluetooth 4 (BLE) USB iBeacon\u2122</span>
                    </td>
                    <td style="
                      text-align: right;
                      border-top: solid 1px #dedede;
                      font-weight: bold; color: #24b646;
                      font-family: 'Lato', sans-serif;
                      font-size: 18px;
                      letter-spacing: 0.2px; word-wrap: break-word">
                        € 74.85
                    </td>
                </tr>
            </table>
0 голосов
/ 30 января 2019

Я думаю, что это происходит, потому что вы устанавливаете ширину среднего тд на 50%, поэтому она изменит ширину первого тд, чтобы занять оставшееся пространство строки таблицы.Установка ширины второго тд на 100% должна исправить это.

...