ブラウザでのユーザースタイリングのCSSについて


13

Webブラウザで特定のサイトの外観に特定の変更を加えたい。このサイトではCSSを使用しているため、ユーザーCSSオーバーライドを作成する必要があります(これが間違っている場合は修正してください)。

私のブラウザは、Firefox(で何かを書くべきだと思うchrome/userContent.css)とChrome(User\ StyleSheets/Custom.css)です。

具体的に変更したいのは、/unix//のすべてのページで背景パターン(暗いドット)を削除することです。しかし、より一般的には、釣りの方法を教えてください:どのパラメータを変更するかをどのように見つけ、どのようにこの変更をユーザーのCSSに書き込むのですか?

回答:


15

私のメインのブラウザであるFirefoxに精通していることしか話せません。あなたの「魚を教えて」というリクエストを満たすために、ここでは一般的なことをしようとします。そのために、2つの例を紹介します。あなたの例と、より現実的なレッスンが含まれる例です。最初に、ユーザーCSSの作成を容易にするツールを入手します。

  1. 最新のFirefoxに更新します。最近のバージョンの一部には、Webサイトインスペクターツールが拡張されているため、それらが必要になります。
  2. オプション:より強力なサイトインスペクターツールを提供するFirebug拡張機能をインストールします。(個人的には、ユーザーCSSの作成にFirebugを使用していませんが、完全を期すためにここに言及しています)
  3. Stylish拡張機能をインストールします。これは、ユーザーCSSの作成を大幅に簡素化するユーザーCSS中心の拡張機能です。

それでは、実際に何かを書きます。先に進む前に、HTMLとCSSの基本的な知識が必要です。W3Schoolsには、HTMLCSSの基本構造と構文を理解するための適切なチュートリアルが用意されています。この回答のために、この例を完成させるのに十分な初心者を支援するのに十分な情報を含めます。

  1. ページに移動します。(あなたの場合、/unix//
  2. 操作する要素を右クリックします。(背景はページ全体に影響するため、この場合はページのほぼどこでも)
  3. ポップアップメニューから[要素の検査]を選択します。これにはFirefoxの統合検査ツールが使用されますが、ここではFirebugには触れませんが、同様のペインと機能があります。
  4. これにより、Firefoxウィンドウの下部と側面にパネルが開きます。下部に、HTMLが表示されています。右側には、選択したページ要素のCSSルールが表示されています(これは右クリックしたものになります)。下部で、さまざまな要素をクリックして移動します。ページは要素のツリーに編成され、ツリー内の各ノードを折りたたんだり展開したりできます。要素をクリックすると、選択した要素がページ上で強調表示されます。
  5. 一般に、この時点で、親要素(ツリー内にその要素を含むアイテム)とともに、操作しようとしている要素を検査する必要があります。実際に操作する必要がある要素を特定します。たとえば、このページの回答をいじっている場合、最終的に回答のテキストを含む<p>要素から開始することになりますが、テキストの周りのすべてのもの、たとえばup /下票矢印、ポスターの情報、共有/編集/フラグのリンクなど。だから、「answer-####」のidとクラスを持つ<div>タグに数レベル上に移動します。"回答"、これは回答のすべてのウィンドウドレッシング要素を含む要素であるためです。それをクリックすると、Webページのその部分が強調表示されます。(この場合、ページの背景は<body>タグ内の上部近くにあります。HTMLの上部までスクロールし、<body>タグをクリックします。)
  6. 次に、操作するこの要素のCSSプロパティを識別する必要があります。右側のCSSを見て、変更するプロパティを見つけます。個人的には、私はCSSにかなり慣れていないので、この時点で、「css」とプロパティ名をグーグルで検索して、プロパティとその動作について詳しく学びます。SEの答えを見ている私の例を続けて、答えの周りのマージンを変更したいとしましょう。all.cssファイルのマージンプロパティは0pxに設定されていますが、これらの要素の周囲には明らかにマージンがあります。いくつかのグーグルは、パディングプロパティを探すことを教えてくれます。パディングプロパティは、アイテムの周囲のマージンにも影響する可能性があるためです。案の定、答えに設定されるパディングに関連する2つのプロパティ、padding-bottomとpadding-topがあります。(あなたの特定の問題のために、あなたはCSSのプロパティで「背景」のために見て、背景画像を探しています。あなたは、表示されます「背景」プロパティ最上部付近を。それは、そのページのbody要素に適用されます。グーグルを" css background property」を参照して、そのプロパティがどのように機能するかを学び、色や画像へのURL、さまざまな修飾子を含めることができることを示します。背景画像プロパティの仕組みを掘り下げて調べた後、有用な情報、デフォルト値 'none'。背景画像をデフォルト値に戻したいので、その情報が必要になります。
  7. 次に、Stylishを使用します。Stylishを使用しない代替手段は、回答に投稿したファイルを編集することです。スタイリッシュなため、多くのサイトのユーザーCSSを簡単に管理できます。StylishはFirefoxウィンドウに小さなアイコンを追加し、クリックして「新しいスタイルを作成」​​->「(このサイト).comの場合」に進みます。スタイルに名前とオプションのタグを指定します。このスタイルをSuperuser.comやStackexchange.comなどに適用されるスタイルとして区別するために、このウィンドウでは、このドメインだけでCSSを変更できるテンプレートが提供されます。特定のURLのCSSを変更する必要がある場合すべてのサイトに適用するCSSを作成する場合は、スタイリッシュなメニューから適切なエントリを選択するだけで、空白のスタイルを取得することもできます。

    @namespace url(http://www.w3.org/1999/xhtml);
    
    @-moz-document domain("superuser.com") {
    
    }

    @ -moz-documentブロックに入れられたものはすべて、括弧内のドメインにのみ適用れます。上記の太字の項目を参照してください。回答のパディングを変更するには、テキストボックスを次のように更新します。

    @namespace url(http://www.w3.org/1999/xhtml);
    
    @-moz-document domain("superuser.com") {
        .answer {
            padding-bottom:0px;
            padding-top:0px;
        }
    }

    CSSを知らない人のために、このダウンを破るために、私たちが最初に選択しているクラスを(エルゴAは、「」開始時になります。私たちはIDによって選択された場合、私たちは『#』そこを置くところ。)答え(つまり「答え」)。次に、中括弧でブロックを開き、変更する選択アイテムのプロパティをリストします。最初にpadding-bottomを変更し、それを0ピクセルに設定しています。次に、padding-topに対して同じことを行います。各プロパティと値はセミコロンで終わります。次に、中括弧でブロックを閉じます。(Unixの例では、次のようにします。

    @namespace url(http://www.w3.org/1999/xhtml);
    
    @-moz-document domain("unix.stackexchange.com") {
        body {
            background:none;
        }
    }

    ここでは、unix.stackexchange.comドメインで作業しています。「body」要素を選択しています(HTML要素を選択する場合もCSSセレクターであり、ここでは#sや.sは不要です)。背景をなしに設定しています。)

  8. スタイリッシュなスタイル編集ウィンドウの下部にあるボタンに注目します。「プレビュー」では、入力した変更が有効になるため、実際の動作を確認できます。「保存」は変更を保存します。「キャンセル」はかなり明白です。ほとんどのユーザーCSSの変更については、[プレビュー]をクリックして、変更が意図したとおりに機能したかどうかを確認します。どちらの例でも、機能しなかったことがわかります。これには重要な理由がありますが、今は対処します。
  9. CSSには、ユーザーCSS、作成者CSS、ブラウザーCSSの処理方法を決定するための特定の優先順位があります。通常、ページの作成者によって作成されたページ用のCSSがあり、そのページ上の多くの要素のルールが含まれます。ルールが作成者によって定義されていないが、ユーザーCSSにある場合、ブラウザーはそれを使用します。どちらにもその要素に対してCSSが定義されていない場合、ブラウザはその要素に対して独自のデフォルトCSSルールを使用します。そのため、ここには重みの階層があります(作成者>ユーザー>ブラウザー)。3つすべてで何かが定義されている場合、より重いCSSが勝ち、CSSが有効になります。軽量のCSSを使用して、重量の高いCSSをオーバーライドする方法があります。それは、それらを重要に指定することです。これを行うには、「!important」を含めます

    @namespace url(http://www.w3.org/1999/xhtml);
    
    @-moz-document domain("unix.stackexchange.com") {
        body {
            background:none !important;
        }
    }

    [プレビュー]をもう一度クリックすると、ユーザーCSSが機能することがわかります。[保存してお楽しみください]をクリックします。

Chromeを使用している場合、組み込みのインスペクターは既に非常に優れています。また、スタイリッシュな拡張機能もあります。CSSの変更を入力する方法は少し異なります。[インストールされたスタイルの管理]を選択し、[新しいスタイルの作成]をクリックし、サイトまたはURLパターンを入力してコードボックスの下に投稿を適用し、[ドメイン固有のCSSのみを入力して、コード」ボックス、たとえば

body {
  background:none !important;
}

2

インストール放火犯関連するCSSプロパティを識別して、書き込みにグリースモンキー、それを上書きするスクリプトを。


2
グリースモンキーを使用してcssプロパティを取得することは、ハンマーを使用してネジを打ち込むようなものです。動作しますが、エレガントではなく、途中で何かを壊す可能性が高くなります。
カレブ

2

あなたはあなたがサイトに置いていたならあなたがするであろうことをする

foo.bar { background-pattern:none; }

それから加えて

!important 

の前に}。ここでは、非user-cssの使用に関する少し詳細を説明しますが、それでも使用のために説明されています。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.