百度知道 横幅两边的色阶 咋实现的?

开 DevTool 自己看,又没有用什么 hack,一看就看到了。
■网友
补充一下颜色提取是由后端实现。想要知道一个功能是后端实现还是前端实现直接看 HTTP 响应的内容在view-source:https://zhidao.baidu.com/daily/?period=1218中可以看到这些代码\u0026lt;div class="banner-wp" style="background-color:#b19d92;"\u0026gt;\u0026lt;style type="text/css"\u0026gt; .banner-left-mask { background: -moz-linear-gradient(left, rgba(177,157,146,1) 0%, rgba(177,157,146,0) 100%); /* FF3.6+ */ background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(177,157,146,1)), color-stop(100%,rgba(177,157,146,0))); /* Chrome,Safari4+ */ background: -webkit-linear-gradient(left, rgba(177,157,146,1) 0%,rgba(177,157,146,0) 100%); /* Chrome10+,Safari5.1+ */ background: -o-linear-gradient(left, rgba(177,157,146,1) 0%,rgba(177,157,146,0) 100%); /* Opera 11.10+ */ background: -ms-linear-gradient(left, rgba(177,157,146,1) 0%,rgba(177,157,146,0) 100%); /* IE10+ */ background: linear-gradient(to right, rgba(177,157,146,1) 0%,rgba(177,157,146,0) 100%); /* W3C */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\u0026#39;#b19d92\u0026#39;, endColorstr=\u0026#39;#00b19d92\u0026#39;,GradientType=1 ); /* IE6-9 */ } .banner-right-mask { background: -moz-linear-gradient(left, rgba(177,157,146,0) 0%, rgba(177,157,146,1) 100%); /* FF3.6+ */ background: -webkit-gradient(linear, left top, right top, color-stop(0%,rgba(177,157,146,0)), color-stop(100%,rgba(177,157,146,1))); /* Chrome,Safari4+ */ background: -webkit-linear-gradient(left, rgba(177,157,146,0) 0%,rgba(177,157,146,1) 100%); /* Chrome10+,Safari5.1+ */ background: -o-linear-gradient(left, rgba(177,157,146,0) 0%,rgba(177,157,146,1) 100%); /* Opera 11.10+ */ background: -ms-linear-gradient(left, rgba(177,157,146,0) 0%,rgba(177,157,146,1) 100%); /* IE10+ */ background: linear-gradient(to right, rgba(177,157,146,0) 0%,rgba(177,157,146,1) 100%); /* W3C */ filter: progid:DXImageTransform.Microsoft.gradient( startColorstr=\u0026#39;#00b19d92\u0026#39;, endColorstr=\u0026#39;#b19d92\u0026#39;,GradientType=1 ); /* IE6-9 */ }\u0026lt;/style\u0026gt;
■网友
没有仔细看代码,但要么是前端实现(可能性不大),要么是后端接口处理图片后直接传过来色值。但无论是前端还是后端,用到的算法都有成熟的轮子可以用,原理有最小差值、八叉树等。
■网友
题主的意思是不是说,这个背景色是吸到图片边缘的颜色
■网友
两个元素加的渐变百度知道 横幅两边的色阶 咋实现的?
【百度知道 横幅两边的色阶 咋实现的?】

■网友
你再往下,看 banner-left-mask 和 banner-right-mask 的样式,其实就是做了个渐变而已。
■网友
我们也做过一个类似的网站。就是添加banner图片的时候,填一个底色……反正banner图片也要美工做,做完也要编辑上传,数量也不是无穷无尽的。这样美工作图的时候会确保两边的边缘颜色一致,并且会有非常自然的渐变。


推荐阅读