Cambiar el CSS predeterminado de Google Chrome

43

Me gustaría poder cambiar el CSS predeterminado utilizado por Chrome, como eliminar los subrayados de los enlaces, etc. Sin embargo, no puedo encontrar el archivo CSS predeterminado utilizado por Chrome. ¿Alguien sabe dónde está?

Jorge IV
fuente
3
Si es desarrollador, le recomiendo no hacerlo, ya que cambia el valor predeterminado de css.
nXqd
Para una forma simple de modificar CSS usando su propia extensión muy simple, consulte: stackoverflow.com/questions/21948850/…
Usuario

Respuestas:

33

(Actualización 2014) Dado que la compatibilidad con las hojas de estilo del usuario se eliminó recientemente de Google Chrome, la única opción para este momento es usar extensiones (como Stylus * 1), pero estas se comportarán de manera diferente (ver más abajo).

La solicitud más relevante para reintroducir verdaderas hojas de estilo de usuario en Google Chrome es el problema 347016: admite hojas de estilo de usuario .

Según la especificación, la regla de "hoja de estilo de usuario real" tiene una especificidad de origen más baja en cascada que la regla de autor, pero !importantlas reglas de hoja de estilo de usuario tienen una especificidad de origen más alta que la !importantregla de autor, independientemente de su especificidad de selector .

Las extensiones que imitan las hojas de estilo del usuario en Chrome simplemente inyectan (con suerte) el último elemento de estilo en la página, lo que tiene algunas consecuencias:

  • dicho estilo está en el "nivel de autor" en la cascada, por lo que debe asegurarse de que su !importantregla tenga una especificidad mayor que la que desea anular
  • "su" estilo inyectado está expuesto a los scripts de la página, por lo que pueden eliminarlo fácilmente a voluntad.

* 1 La extensión original, Stylish , se encuentra actualmente (2017) en estado de desarrollo errático por parte de un nuevo mainetainer, por lo que aconsejaría evitarlo y usar alternativas como el Stylus mencionado anteriormente.


(La siguiente respuesta original ahora está obsoleta).

Afaik no es posible ajustar el UA css en sí, pero puedes crear un estilo de usuario global: inicia Chrome una vez con --enable-user-stylesheet. Esto creará <user-data-dir>/<profile>/User StyleSheet/Custom.csslo que puede usar (los cambios se propagan inmediatamente). http://code.google.com/p/chromium/issues/detail?id=2393

mi f
fuente
2
Esto no parece legítimo con el cromo actual. Es posible que hayan eliminado esta función desde que se publicó esta respuesta.
Pistos
1
Tienes razón, he actualizado la respuesta.
myf
sí, ya no parece ser compatible (probado en Chrome 73 y 76 (canario)) ( Custom.cssy User Stylesheetsya no existe)
localhostdotdev
4

La única solución que se me ocurre es usar un script de Greasemonkey que agrega una entrada de estilo a cada página html que desactiva los subrayados de los enlaces. Algo como:

<style> a {text-decoration:none} </style>

Aparentemente, este artículo puede ayudarlo a comenzar:
CÓMO: Instalar secuencias de comandos de Google Chrome Greasemonkey (solo en Windows)

harrymc
fuente
44
Me parece curioso que no pueda modificar directamente el CSS. Firefox tiene userChrome.css y userContent.css, que hacen que la modificación se vea y se sienta increíblemente simple.
George IV
@harrymc - Cambié tu <style>código de la cita en bloque al código para que no tengas que preocuparte por los "espacios adicionales"
Jared Harley
0

Puede cambiar el estilo de los cromos css ui. Solo recuerde que si lo cambia, algunos efectos como Ejemplo: #footer {color:#5F5F5F !important;}cambiarán en cada sitio que use #footer. Has sido advertido Custom.css cambia casi todo en los navegadores de chromes

Windows XP Google Chrome:

C: \ Documents and Settings \% USERNAME% \ Local Settings \ Application Data \ Google \ Chrome \ User Data \ Default

Cromo:

C: \ Documents and Settings \% USERNAME% \ Local Settings \ Application Data \ Chromium \ User Data \ Default \ User StyleSheets

Windows 7 o Vista (ayuda en la sección de ayuda) Google Chrome:

C: \ Users \% USERNAME% \ AppData \ Local \ Google \ Chrome \ User Data \ Default \ User StyleSheets

Cromo:

C: \ Users \% USERNAME% \ AppData \ Local \ Chromium \ User Data \ Default \ User StyleSheets

Mac OS X Google Chrome:

~ / Library / Application Support / Google / Chrome / Default / User StyleSheets

Cromo:

~ / Library / Application Support / Chromium / Default / User StyleSheets

Linux Google Chrome:

~ / .config / google-chrome / Default / User StyleSheets

Cromo:

~ / .config / chromium / Default

Chrome OS

/ inicio / cronos /

¿Quieres pruebas? Mira mi tema para el editor del programa http://userstyles.org/styles/95226/chrome-userstyles-editor-hacker-version-cyberat

No dude en visitarme, creo hojas de estilo de interfaz de usuario o sitios aleatorios como facebook google.etc, y los hago en negro y rojo.

cyberationmicro.com
fuente
44
Eso no funcionará porque Chrome 33 dejó de ser compatible con los estilos de usuario.
Synetech
0

Hay un problema cuando se usa Stylish como inyector de estilo de
usuario!important : el nivel de prioridad del usuario sin es mayor que el nivel de prioridad del autor sin!important

Entonces escribo un script de usuario como inyector:
https://github.com/zcyzcy88/SelfColle/blob/master/StyleInject.user.js

principio:
Inyectar estilo en document.head.prependChild(), antes del estilo del autor de la página web, tiene una prioridad más baja, para evitar la superposición de estilo de usuario.

Sista Fiolen
fuente
Hola y bienvenido a SuperUser.com. ¿Sería capaz de profundizar en lo que hace exactamente su script?
Gerente de servicio
Inyecte estilo en document.head.prependChild(), para evitar la superposición de estilo de usuario.
Sista Fiolen
Si puede editar su respuesta, sería más útil detallar qué hace cada parte de su secuencia de comandos.
Gerente de servicio
0

En 2018, Chrome> = 68.0.3440.106 (y probablemente mucho antes)

Ya tenía la extensión de anulación de recursos para varios usos de desarrollo, así que ahora la uso para agregar mi propia hoja de estilo para corregir algunas malas elecciones de estilo en JIRA (y para ocultar más anuncios, je je). La opción que uso es "Inject File" y funciona muy bien. No he intentado regexing la configuración 'url' para que solo funcione en sitios particulares, pero mis selectores css son lo suficientemente específicos como para que pueda dejar la url como '*'

Eón
fuente
0

Encontré esta pregunta cuando buscaba una solución sobre cómo proporcionar una hoja de estilo para páginas sin estilo. Ninguna de las soluciones anteriores me ayudó mucho a partir de 09/2018 Chrome no admite la función de hoja de estilo personalizada eliminada anteriormente.

La solución que se me ocurrió y que funciona de maravilla para mi caso de uso se logra utilizando este complemento de Chrome con un script js personalizado que inserta mi CSS personalizado en el encabezado de la página si no tiene ninguna hoja de estilo. No funcionará en una página que tenga una hoja de estilo vinculada, pero para mi caso de uso es suficiente.

Aquí está el script JS que estoy usando:

window.addEventListener("load", function(event) {
    console.log("All resources finished loading!");
    console.log(document.styleSheets); 
    if (document.styleSheets.length > 0) {
        return;
    }

    var css = `
    /*Your CSS goes here*/
    `;
    var style = document.createElement('style');
    style.type = 'text/css';
    style.appendChild(document.createTextNode(css));
    document.head.appendChild(style);
  });
Maroš Beťko
fuente