Changing the highlight color when selecting text in an HTML text input

后端 未结 10 1080
有刺的猬
有刺的猬 2020-11-30 00:07

I\'ve been looking for this throughout the web and can\'t even find anyone else even asking this, let alone a solution...

Is there a way to change the color of the h

10条回答
  •  小蘑菇
    小蘑菇 (楼主)
    2020-11-30 01:06

    Here is the rub:

        ::selection {
          background: #ffb7b7; /* WebKit/Blink Browsers /
        }
        ::-moz-selection {
          background: #ffb7b7; / Gecko Browsers */
        }
    Within the selection selector, color and background are the only properties that work. What you can do for some extra flair, is change the selection color for different paragraphs or different sections of the page.

    All I did was use different selection color for paragraphs with different classes:

        p.red::selection {
          background: #ffb7b7;
        }
        p.red::-moz-selection {
          background: #ffb7b7;
        }
        p.blue::selection {
          background: #a8d1ff;
        }
        p.blue::-moz-selection {
          background: #a8d1ff;
        }
        p.yellow::selection {
          background: #fff2a8;
        }
        p.yellow::-moz-selection {
          background: #fff2a8;
        }
    Note how the selectors are not combined, even though >the style block is doing the same thing. It doesn't work if you combine them:

    /* Combining like this WILL NOT WORK */
    p.yellow::selection,
    p.yellow::-moz-selection {
      background: #fff2a8;
    }

    That's because browsers ignore the entire selector if there is a part of it they don't understand or is invalid. There is some exceptions to this (IE 7?) but not in relation to these selectors.

    DEMO

    LINK WHERE INFO IS FROM

提交回复
热议问题