我这里有个情况。我有一个div
,其中包含一个svg
图形。在div
里面我也有一些文字。默认情况下,svg
看起来有点失真。因此,我使用filter:blur()
css使其变得更加平滑。但是问题在于div
上的所有内容(包括文本)也变得模糊。这是我的代码:
#back-clip{
height: 700px;
background-color:rgb(29, 62, 222); /* For browsers that do not support gradients */
background-image: linear-gradient(to right, rgb(29, 62, 222) , rgb(3, 218, 246));
-webkit-clip-path: polygon(-2px 421px,814px 356px,962px 419px,1920px -2px,-2px -2px);
clip-path: url("#clipPolygon");
filter: blur(1px);
}
<!DOCTYPE html>
<html lang="en">
<head>
<!-- Required meta tags -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.3/umd/popper.min.js"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script>
</head>
<body>
<div class="container-fluid" id="back-clip">
<div class="row">
<div class="col-12">
<svg width="0" height="0">
<clipPath id="clipPolygon">
<polygon points="0 700,1219 553,1920 700,1920 0,-2 -2">
</polygon>
</clipPath>
</svg>
</div>
</div>
<div class="row">
<div class="col-12">
<div class="text-light">
<h1>Welcome</h1>
</div>
</div>
</div>
</div>
</body>
</html>