具有渐变的 CSS3 背景图像纹理不起作用

标签 css background-image gradient

我设置了这个并且它有效。

background: #F5F5F5;
background-image: url('/images/texture.png'); /* fallback */
background-image: url('/images/texture.png'), -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#FFF)); /* Saf4+, Chrome */
background-image: url('/images/texture.png'), -webkit-linear-gradient(top, #FFF, #FFF); /* Chrome 10+, Saf5.1+ */
background-image: url('/images/texture.png'),    -moz-linear-gradient(top, #FFF, #FFF); /* FF3.6+ */
background-image: url('/images/texture.png'),     -ms-linear-gradient(top, #FFF, #FFF); /* IE10 */
background-image: url('/images/texture.png'),      -o-linear-gradient(top, #FFF, #FFF); /* Opera 11.10+ */
background-image: url('/images/texture.png'),         linear-gradient(top, #FFF, #FFF); /* W3C */

但有时我会收到此错误消息:

文件不存在:/var/www/html/site.com/images/texture.png),线性渐变(顶部,,引用:site.com

我怎样才能避免这个错误?

最佳答案

您在 CSS 中使用图像的相对路径 ('/images/texture.png')。如果您在站点中使用子文件夹,这很可能会导致问题,因为图像文件的相对路径在子文件夹中不再有效。

例如,如果您的站点中有一个页面位于名为“Accounts”的子文件夹中,那么从该子文件夹中的页面到图像的路径将为“/Accounts/images/texture.png”,这显然是不正确的,会产生文件不存在错误。

通过使用完整的 URL (http://) 和 (www.site.com/images/texture.png) 作为 CSS 中图像的路径,可以轻松避免此问题。这样一来,无论您的 CSS 文件位于何处或页面中有多少个子文件夹,您的应用程序始终准确地知道在哪里可以找到图像。

关于具有渐变的 CSS3 背景图像纹理不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17334976/

相关文章:

html - 添加带有填充和替代颜色的上划线和下划线

javascript - 网格中行之间的空间

html - 只模糊背景中的重复图像?

python - 在 Tensorflow 中计算雅可比矩阵

jquery - 如何像stackoverflow一样做彩色动画

css - 填充、边距和转换值是否有限制?

css - 背景图像在元素外部被切断。我怎样才能让它显示出来?

安卓应用程序 : Background Image over Background Color

android - 将Alpha最高设置为0%,最低设置为70%-Android-Kotlin

r - ggplot : How to produce a gradient fill within a geom_polygon