Как я могу "отключить" таблицу стилей?

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

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

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

Прошу прощения, если это простой вопрос, но я действительно очень внимательно смотрел на ответ, но безрезультатно, я всего лишь студент первого курса, поэтому вам предстоит пройти долгий путь!

Ответ 1

Вы можете сделать это на стороне сервера, когда пользователь нажимает на "специальную" ссылку, ваш код на стороне сервера просто "пропускает" элементы стилей.

Ответ 2

Это должно работать

for ( i=0; i<document.styleSheets.length; i++) {
    void(document.styleSheets.item(i).disabled=true);
}

Ответ 3

Вот хороший способ сделать это быстро из javascript:

  • Предпринял все ваши правила CSS с тегом body.enabled:

    body.enabled p {
    }
    
    body.enabled #Myselector {
    }
    ...
    
  • Объявите свою разметку как таковую:

    ...
    <body class="enabled">
        ...
    </body>
    ...
    
  • В вашем JavaScript, когда вы хотите отключить CSS, удалите класс "enabled" из <body> и переключите его на что-то еще (скажем, "отключено" ). Используйте любую методику, которую вы сочтете подходящей для этого (jQuery сделает это легко, но это можно сделать без)

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

Ответ 4

Вы пытаетесь сопоставить все функции, уже разработанные в браузерах (T +, T-, no CSS)? Просили ли вы сделать доступный веб-сайт или, в частности, реализовать функции доступности? Я понимаю, что это задание, но это пустая трата времени ИМХО, время, которое было бы лучше потрачено на реализацию рекомендации WCAG 2.0. (Я часто использую "Accessiweb" методологию).

Моя первая идея состояла в том, чтобы деконструировать существующий CSS, например Универсальный IE6 для IE6 (вам просто нужно удалить условные комментарии и нацелиться на каждый браузер), но решение @kappa кажется лучше, поскольку в обоих случаях у вас должен быть доступ к исходному коду.