Переопределить файл таблицы стилей .css (не встроенный)

Можно ли как-то переопределить стандартную (в данном случае жидкую) таблицу стилей CSS, но без использования встроенных стилей? Также я хочу, чтобы этот стиль применялся только к этой конкретной странице, а не к другим.

Да, я могу использовать !important внутри тега <style> на этой конкретной странице, но мне нужно будет сбросить многие вещи. Это слишком много работы, и выглядит очень грязно.

Итак, есть ли способ сбросить ВСЕ элементы к значениям свойств по умолчанию и использовать свой собственный стиль только на этой одной странице?

Вы можете просто не использовать свой основной файл CSS на этой конкретной странице, если это возможно.

Keno 27.01.2019 19:28
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
3
1
72
3

Ответы 3

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

Ну, вы не можете изменять свои файлы .css, но вы можете динамически заменять файлы с помощью js.

function replaceFile(newFile, fileLink) {
    var oldcss = document.getElementsByTagName("link").item(fileLink);
    var newcss = document.createElement("link");
    newcss.setAttribute("rel", "stylesheet");
    newcss.setAttribute("type", "text/css");
    newcss.setAttribute("href", newFile);
    document.getElementsByTagName("head").item(0).replaceChild(newcss, oldcss);
}

Другим решением было бы добавить нужные стили с помощью jQuery или js.

$('.demo').css({'background-color':'red','color':'white');

Ваше первое решение - это то, что я имел в виду, но я не знаком с тем, как жидкость компилирует файлы при рендеринге, и в этом конкретном случае я не уверен, что это сработает. Чтобы получить доступ к любой таблице стилей в жидкости, я делаю это в « index.liquid » <link type = "text/css" href = "{{ 'styles.css' | asset_url }}" rel = "stylesheet">. Итак, мне также нужно будет отобразить новую таблицу стилей, а затем заменить активную тему этой новой отображаемой ссылкой? Это правильно?

tr4nc3 27.01.2019 21:41

Вы можете выбрать все элементы внутри оболочки с помощью * и переопределить:

Пример:

.mylink{
  color: red;
}

.mylink:hover{
  color: black;
}

.reset *{
  color: orange;
}

.reset *:hover{
  color: silver;
}
This is the link without reset: 
<a href = "#" class = "mylink">Link</a>


<div class = "reset">
    This is the link with reset: 
    <a href = "#" class = "mylink">Link</a>
</div>

Другие вопросы по теме