Это происходит потому, что таблица не может семантически содержать внутри него элемент уровня блока. Использование псевдоэлементов :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, которые заставляют нижние ячейки фактически быть частью ячеек в строке выше.
Вы можете попробовать это:
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)
Хотя путь Алена Т. в порядке, есть лучший способ, используя Counter
:
from collections import Counter
C = ['A','B','B']
D = ['B']
result = list((Counter(C) - Counter(D)).elements())