Python вычитает список строк из другого списка строк

Это происходит потому, что таблица не может семантически содержать внутри него элемент уровня блока. Использование псевдоэлементов :before и :after добавляет это содержимое до и после содержимого внутри этого родителя. Чтобы перевести это в более понятный аспект, вот что ваш окончательный результат будет технически выглядят в конце:

<table class="minTable" width="800" border="0" cellpadding="0" cellspacing="0">
  <div class="before">
    <img src="topleft.png" />
  </div>
  <tr>
    <td>Some text</td>
    <td>Some other text</td>
  </tr>
  <div class="after">
    <img src="topleft.png" />
  </div>
</table>

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

Как правило, Я бы даже пытался использовать :before и :after с таблицами - это просто просит беспорядок.


Если вы просто пытаетесь добавить углы, я бы использовал CSS для выбора каждой угловой ячейки. Что-то вроде этого:

.minTable > :first-child > tr:first-child > td:first-child /* Top-left corner */
.minTable > :first-child > tr:first-child > td:last-child /* Top-right corner */
.minTable > :last-child > tr:last-child > td:first-child /* Bottom-left corner */
.minTable > :last-child > tr:last-child > td:last-child /* Bottom-right corner */

Эти селекторы не будут работать, если: a) у вас нет элементов вашего тела таблицы вне порядка (например, thead, then tfoot, then tbody - он будет выбирать элементы в tbody для углы, даже если tfoot появится ниже); б) у вас есть элемент colgroup в начале вашей таблицы; или c) вы используете rowspans, которые заставляют нижние ячейки фактически быть частью ячеек в строке выше.

2
задан systrigger 6 March 2019 в 02:22
поделиться

2 ответа

Вы можете попробовать это:

C = ['A','B', 'A','A','B','B','B','X','B']
D = ['A','B','B','Y']

res = [ i for i in C ]

for i in D:
  if i in C:
    res.remove(i)

print(res)
0
ответ дан Shivam Pandya 6 March 2019 в 02:22
поделиться

Хотя путь Алена Т. в порядке, есть лучший способ, используя Counter:

from collections import Counter
C = ['A','B','B']
D = ['B']
result = list((Counter(C) - Counter(D)).elements())
0
ответ дан Tomothy32 6 March 2019 в 02:22
поделиться
Другие вопросы по тегам:

Похожие вопросы: