Text-stroke css for all browsers

The -webkit-text-stroke CSS property specifies the width and color of strokes for text characters. This is a shorthand property for the longhand properties -webkit-text-stroke-width and -webkit-text-stroke-color.

/* Width and color values */
-webkit-text-stroke: 4px navy;
text-stroke: 4px navy;

/* Global values */
-webkit-text-stroke: inherit;
-webkit-text-stroke: initial;
-webkit-text-stroke: unset;
text-stroke: inherit;
text-stroke: initial;
text-stroke: unset;

Constituent properties

This property is a shorthand for the following CSS properties:

  • -webkit-text-stroke-color
  • -webkit-text-stroke-width

Syntax

Values

The width of the stroke.

The color of the stroke.

Formal definition

Formal syntax

-webkit-text-stroke = 
||

=
|
thin |
medium |
thick

Examples

Adding a red text stroke

HTML

<p id="example">The stroke of this text is red.p>

CSS

#example {
  font-size: 3em;
  margin: 0;
  -webkit-text-stroke: 2px red;
}

Result

Specifications

Specification
Compatibility Standard
# the-webkit-text-stroke

Browser compatibility

BCD tables only load in the browser

See also

I'm trying the new text-stroke features and I've searched the web for a cross browser solution. For now I only could find it with webkit properties.

-webkit-text-stroke: 2px #FF1E00;

Could you let me know if there is a way so all browsers will display in the same way?

BoltClock

675k155 gold badges1362 silver badges1334 bronze badges

asked May 24, 2012 at 16:10

0

.strokeme
{
    color: white;
    text-shadow:
    -1px -1px 0 #000,
    1px -1px 0 #000,
    -1px 1px 0 #000,
    1px 1px 0 #000;  
}

from: Outline effect to text

"What I have done instead is used the already supported text-shadow property (supported in Chrome, Firefox, Opera, and IE 9 I believe)."

answered Jun 20, 2013 at 4:36

Text-stroke css for all browsers

0

As of May 24th, 2012, there is no cross-browser solution, as only webkit supports the experimental feature according to http://caniuse.com/#search=text-stroke. You can simulate this (to some degree) with 4 or 5 text-shadow's on an element.

Demo: Text Stroke, on CSS-Tricks.com

answered May 24, 2012 at 16:13

SampsonSampson

261k74 gold badges530 silver badges559 bronze badges

0

You could try strokeText.js, a vanilla javascript plugin.

  • Strokes do not overlap your text like they do with -webkit-text-stroke
  • Supports all browsers except IE8 and below
  • Selectable text
  • Dependency-free

Full disclosure, I made the plugin.

answered Dec 11, 2017 at 20:14

inorganikinorganik

23.1k17 gold badges88 silver badges107 bronze badges

This can't be done natively cross-browser, but it can be implemented with a fallback for unsupported browsers:

color: blue;
-webkit-text-stroke-color: blue;
-webkit-text-fill-color: white;
-webkit-text-stroke-width: 3px;

That way, webkit browsers will display white text with blue outline, but other browsers will still display the color of your choosing (this case blue).

answered Aug 28, 2019 at 21:36

DavidDavid

9281 gold badge12 silver badges19 bronze badges