alert-loop from Material Line Icons by Vjacheslav Trushkin · Line · Alerts · animated · MIT Free for personal and commercial use.

Name
alert-loop
Set
Material Line Icons
Style
Line
Category
Alerts
Animation
Animated SVG (SMIL)
Viewbox
24×24
License
MIT

More alerts icons from Material Line Icons

Use the alert loop icon

SVG

<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path stroke-dasharray="60" d="M12 3l9 17h-18l9 -17Z"><animate fill="freeze" attributeName="stroke-dashoffset" dur="0.6s" values="60;0"/></path><path stroke-dasharray="6" stroke-dashoffset="6" d="M12 10v4"><animate attributeName="stroke-width" begin="0.7s" dur="3s" keyTimes="0;0.1;0.2;0.3;1" repeatCount="indefinite" values="2;3;3;2;2"/><animate fill="freeze" attributeName="stroke-dashoffset" begin="0.7s" dur="0.2s" to="0"/></path><path stroke-dasharray="4" stroke-dashoffset="4" d="M12 17v0.01"><animate fill="freeze" attributeName="stroke-dashoffset" begin="0.7s" dur="0.2s" to="0"/><animate attributeName="stroke-width" begin="1s" dur="3s" keyTimes="0;0.1;0.2;0.3;1" repeatCount="indefinite" values="2;3;3;2;2"/></path></g></svg>

React

import type { SVGProps } from "react";

export function LineMdAlertLoop(props: SVGProps<SVGSVGElement>) {
  return (
    <svg {...props} xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" strokeLinecap="round" strokeLinejoin="round" strokeWidth="2"><path strokeDasharray="60" d="M12 3l9 17h-18l9 -17Z"><animate fill="freeze" attributeName="strokeDashoffset" dur="0.6s" values="60;0"/></path><path strokeDasharray="6" strokeDashoffset="6" d="M12 10v4"><animate attributeName="strokeWidth" begin="0.7s" dur="3s" keyTimes="0;0.1;0.2;0.3;1" repeatCount="indefinite" values="2;3;3;2;2"/><animate fill="freeze" attributeName="strokeDashoffset" begin="0.7s" dur="0.2s" to="0"/></path><path strokeDasharray="4" strokeDashoffset="4" d="M12 17v0.01"><animate fill="freeze" attributeName="strokeDashoffset" begin="0.7s" dur="0.2s" to="0"/><animate attributeName="strokeWidth" begin="1s" dur="3s" keyTimes="0;0.1;0.2;0.3;1" repeatCount="indefinite" values="2;3;3;2;2"/></path></g></svg>
  );
}

Vue

<template>
  <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24"><g fill="none" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2"><path stroke-dasharray="60" d="M12 3l9 17h-18l9 -17Z"><animate fill="freeze" attributeName="stroke-dashoffset" dur="0.6s" values="60;0"/></path><path stroke-dasharray="6" stroke-dashoffset="6" d="M12 10v4"><animate attributeName="stroke-width" begin="0.7s" dur="3s" keyTimes="0;0.1;0.2;0.3;1" repeatCount="indefinite" values="2;3;3;2;2"/><animate fill="freeze" attributeName="stroke-dashoffset" begin="0.7s" dur="0.2s" to="0"/></path><path stroke-dasharray="4" stroke-dashoffset="4" d="M12 17v0.01"><animate fill="freeze" attributeName="stroke-dashoffset" begin="0.7s" dur="0.2s" to="0"/><animate attributeName="stroke-width" begin="1s" dur="3s" keyTimes="0;0.1;0.2;0.3;1" repeatCount="indefinite" values="2;3;3;2;2"/></path></g></svg>
</template>

CSS

.icon-alert-loop {
  width: 24px;
  height: 24px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221em%22%20height%3D%221em%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%3E%3Cpath%20stroke-dasharray%3D%2260%22%20d%3D%22M12%203l9%2017h-18l9%20-17Z%22%20stroke-dashoffset%3D%220%22%3E%3C%2Fpath%3E%3Cpath%20stroke-dasharray%3D%226%22%20stroke-dashoffset%3D%220%22%20d%3D%22M12%2010v4%22%20stroke-width%3D%223%22%3E%3C%2Fpath%3E%3Cpath%20stroke-dasharray%3D%224%22%20stroke-dashoffset%3D%220%22%20d%3D%22M12%2017v0.01%22%20stroke-width%3D%223%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center / contain;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%221em%22%20height%3D%221em%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cg%20fill%3D%22none%22%20stroke%3D%22currentColor%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%222%22%3E%3Cpath%20stroke-dasharray%3D%2260%22%20d%3D%22M12%203l9%2017h-18l9%20-17Z%22%20stroke-dashoffset%3D%220%22%3E%3C%2Fpath%3E%3Cpath%20stroke-dasharray%3D%226%22%20stroke-dashoffset%3D%220%22%20d%3D%22M12%2010v4%22%20stroke-width%3D%223%22%3E%3C%2Fpath%3E%3Cpath%20stroke-dasharray%3D%224%22%20stroke-dashoffset%3D%220%22%20d%3D%22M12%2017v0.01%22%20stroke-width%3D%223%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E") no-repeat center / contain;
}

This icon is animated. Browsers do not run SVG animation inside a CSS mask, so the rule above uses a still of the drawn icon. Inline the SVG (or use the React/Vue/Svelte snippet) to keep the animation.

Direct links: SVG · download · JSON · https://iconsdb.app/api/v1/icon/line-md/alert-loop.svg?color=%231a73e8&size=48