Czy jest jakiś sposób, aby wyłączyć wszystkie zewnętrzne CSS w przeglądarce (Firefox, Chrome ...)?
Podczas korzystania z wolniejszego połączenia internetowego przeglądarka ładuje czasami tylko sam HTML bez informacji CSS. Wygląda na to, że strona została rozłożona na ekranie. Można to zauważyć również w przypadku StackOverflow.
Chcę się upewnić, że moja strona internetowa jest wyświetlana poprawnie, nawet jeśli pliki CSS nie są załadowane.
Nie chodziło mi o to, że chcę przekonwertować zewnętrzny CSS na inline. Ale chcę mieć sposób na jawne wyłączenie wszystkich CSS w przeglądarce, aby móc zmienić położenie moich elementów w lepszy, czytelny sposób.
Wiem, że mogę usunąć wpisy <link rel = 'stylesheet'>, ale co, jeśli mam wiele połączonych stron?
<head>
oznaczenie, kliknij prawym przyciskiem myszy i wybierz opcję Usuń element .Odpowiedzi:
Wtyczka Web Developer dla przeglądarek Firefox i Chrome jest w stanie to zrobić
Po zainstalowaniu wtyczki opcja jest dostępna w menu CSS. Na przykład,
CSS > Disable Styles > Disable All Styles
Alternatywnie, gdy włączony jest pasek narzędzi programisty, możesz nacisnąć
Alt+Shift+A
.źródło
W Chrome / Chromium możesz to zrobić w konsoli programisty.
źródło
Firefox (Win i Mac)
Jeśli jest zainstalowany pasek narzędzi Web Dev, ludzie mogą używać tych skrótów klawiaturowych: Command+ Shift+ S(Mac) i Control+ Shift+ S(Win)
źródło
Ten skrypt działa dla mnie (końcówka kapelusza do złomowanej coli)
styl inline pozostaje jednak nienaruszony
źródło
$('style,link[rel="stylesheet"]').remove()
osiąga to samo, jeśli ma jQuery. Od twitter.com/janlelis/status/433250838757126146 .Rozwijając pomysł scrappedocola / renergy, możesz przekształcić JavaScript w bookmarklet, który jest wykonywany w oparciu o
javascript:
URI, dzięki czemu kod można łatwo ponownie wykorzystać na wielu stronach bez konieczności otwierania narzędzi programistycznych lub przechowywania czegokolwiek w schowku.Po prostu uruchom następujący fragment i przeciągnij link do paska zakładek / ulubionych:
getElementsByTagName('*')
i musiałbym sprawdzać i działać na każdym z nich z osobna.$('style,link[rel="stylesheet"]').remove()
gdy dodatkowy javascript nie jest przytłaczający.źródło
document.querySelectorAll('*[style]').forEach((e)=>e.removeAttribute('style'));
wykonuje iterację tylko przez elementy z istniejącymistyle
atrybutami.Zainstaluj Adblock Plus, a następnie dodaj
*.css
regułę w opcjach filtrów (zakładka filtrów niestandardowych). Metoda ma wpływ tylko na zewnętrzne arkusze stylów . Nie wyłącza stylów wbudowanych.Ta metoda robi dokładnie to, o co prosiłeś.
źródło
Kolejny sposób na osiągnięcie rozwiązania @David Baucum w mniejszej liczbie kroków:
W niektórych przypadkach może być wygodniejszy.
źródło
Ponieważ większość odpowiedzi wydaje się być tutaj dość stara, odwołując się do elementów menu, których nie mogę znaleźć w aktualnych wersjach popularnych przeglądarek, oto jak to zrobić w aktualnej wersji w Firefox Developer Edition:
CTRL + SHIFT + I
)źródło
W przypadku stron, które opierają się na zewnętrznym CSS (obecnie większość stron) prostym i niezawodnym rozwiązaniem jest zabicie
head
elementu:Kliknij tę stronę prawym przyciskiem myszy (w przeglądarce Chrome / Firefox), wybierz opcję Sprawdź , wklej kod w konsoli devtools i naciśnij klawisz Enter .
Wersja bookmarkletu tego samego kodu, który możesz wkleić jako adres URL zakładki:
Teraz kliknięcie zakładki na pasku ulubionych spowoduje wyświetlenie strony bez arkuszy stylów CSS.
Usunięcie nagłówka nie zadziała w przypadku stron, które używają stylów wbudowanych.
Jeśli używasz Safari na MacOS, to:
źródło
Wypróbowałem w narzędziach programistycznych Chrome i metoda jest poprawna tylko wtedy, gdy CSS są dołączone jako pliki zewnętrzne i nie będzie działać dla stylów wbudowanych.
Lub
Wyjaśnienia
document.querySelectorAll('link')
pobiera wszystkie węzły łącza. To zwróci tablicę elementów DOM. Zauważ, że to nie jest obiekt Array w javascript.Array.prototype.forEach.call(linkElements
pętle przez elementy łączaelement.remove()
usuwa element z DOMWynik w postaci zwykłej strony HTML
źródło
document.querySelectorAll("style").forEach((e)=>(e.remove()))
możesz zablokować dowolne żądanie (nawet dla pojedynczego pliku css) od inspektora w następujący sposób:
Kliknij prawym przyciskiem myszy> zablokuj adres URL żądania
bez wyłączania innych plików css> https://umaar.com/dev-tips/68-block-requests/ To standardowa funkcja inspektora, bez wtyczek ani sztuczek
źródło
W przeglądarce Firefox najprostszym sposobem jest użycie polecenia menu Widok> Styl strony> Brak stylu. Ale to również wyłącza efekty niektórych prezentacyjnych znaczników HTML. Dlatego używanie wtyczek, jak sugeruje @JoelKuiper, jest zwykle lepsze; dają większą elastyczność (np. wyłączając tylko niektóre arkusze stylów).
źródło
Właściwie to łatwiejsze niż myślisz. W dowolnej przeglądarce naciśnij klawisz F12, aby wywołać konsolę debugowania. Działa to w przeglądarkach IE, Firefox i Chrome. Nie jestem pewien co do Opery. Następnie zakomentuj CSS w oknach elementów. Otóż to.
źródło
Podczas przeglądania HTML za pomocą preferowanego narzędzia Browser Development (np. Chrome Devtools) znajdź
<head>
element i usuń go w ogóle.Zauważ, że spowoduje to również usunięcie pliku js, ale dla mnie jest to najszybszy sposób na rozebranie strony .
źródło
Wszystkie sugerowane odpowiedzi po prostu eliminują css dla tego ładowania strony. W zależności od przypadku użycia możesz w ogóle nie ładować css:
Narzędzia Chrome Dev Tools> karta Sieć> kliknij prawym przyciskiem myszy arkusz stylów, którego dotyczy problem,> zablokuj adres URL żądania
źródło
Dla tych, którzy nie chcą żadnej wtyczki ani innych rzeczy, możemy użyć document.styleSheets, aby wyłączyć / włączyć css.
// kod wyłączający wszystkie css
Jeśli używasz Chrome, możesz utworzyć funkcję i dodać do swoich fragmentów. Abyś mógł używać konsoli do włączania / wyłączania CSS dla dowolnych witryn.
// Snippets -> DisableCSS
// w konsoli
źródło