Исключение CSS Selector

У меня есть внешний CSS для сброса, который применяется ко всем таблицам, тд, див и т. Д. На моем веб-сайте есть шаблон клиента, который позволяет пользователю создавать желаемое содержимое в формате HTML.

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

Можно ли написать селектор css для выбора всех таблиц, td, div и т. Д., Которые не являются дочерними для данного идентификатора div?

Ниже приведен мой тестовый HTML-код и reset.css. Содержимое div customtemplate динамически вводится пользователем. Пользователь пытается использовать border=1 для таблицы, он применяет все ячейки таблицы к границе 1 без reset.css. Но при сбросе css границы не отображаются. Мои пользователи не являются профессионалами в области html/css, поэтому они создадут простой html и ожидают, что будут отображаться при написании на своей тестовой странице. Если их HTML отображаются не одинаково для всех браузеров, это зависит от них.
Я не несу ответственности за это. Мне просто нужно отобразить их HTML в div без reset.css. В любом случае, чтобы решить?

            <html>
            <head>
                <link href="reset.css" type="text/css" rel="stylesheet"/>
            </head>
            <body>
                <div class="customtemplate">
                    <table border="1" cellpadding="10px">
                        <tr>
                            <td>abcd</td><td>def</td>
                        </tr>
                        <tr>
                            <td>hello</td><td>world</td>
                        </tr>
                    </table>
                </div>
                <br><br>
                <table>
                    <tr>
                        <td>default</td><td>reset</td>
                    </tr>
                    <tr>
                        <td>style</td><td>using</td>
                    </tr>
                </table>
            </body>
            </html>


            table, td {
                border: 0;
                padding: 0;
            }

1 ответ

Правильный способ - определить ВАШИ настройки по умолчанию для этого div. Сброс CSS помогает избежать проблем, вызванных различными значениями по умолчанию в браузерах. Таким образом, для этого div с указанным идентификатором вы должны определить некоторые разумные значения по умолчанию, которые отличаются от значений по умолчанию, используемых на сайте, но все же можно ожидать, что они будут одинаковыми по умолчанию в каждом браузере.

Например:

/* reset.css */

p { margin: 0; }

/* yourdefaults.css */

#yourdiv p { margin-bottom: 10px; }
Другие вопросы по тегам