我下载了以下代码:
$image = ImageClass::getImage('bg.jpeg','myTitle');
$bg_img = explode(" ",$image);
$src = substr(strpos('"',$bg_img),strlen($bg_image)-1);
echo "<div style='background-image: url(".$src.");' ></div>
<?php
/*
*** OPTIONS ***/
// TITLE OF PAGE
$title = "ARQUIVOS PROPAR";
// STYLING (light or dark)
$color = "dark";
// ADD SPECIFIC FILES YOU WANT TO IGNORE HERE
$ignore_file_list = array( ".htaccess", "Thumbs.db", ".DS_Store", "index.php", "flat.png", "error_log" );
// ADD SPECIFIC FILE EXTENSIONS YOU WANT TO IGNORE HERE, EXAMPLE: array('psd','jpg','jpeg')
$ignore_ext_list = array( );
// SORT BY
$sort_by = "name_asc"; // options: name_asc, name_desc, date_asc, date_desc
// ICON URL
//$icon_url = "https://www.dropbox.com/s/lzxi5abx2gaj84q/flat.png?dl=0"; // DIRECT LINK
$icon_url = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAA+gAAAAyCAYAAADP7vEwAAAgAElEQVR4nOy9d5hdV3nv";
// TOGGLE SUB FOLDERS, SET TO false IF YOU WANT OFF
$toggle_sub_folders = true;
// FORCE DOWNLOAD ATTRIBUTE
$force_download = true;
// IGNORE EMPTY FOLDERS
$ignore_empty_folders = false;
// SET TITLE BASED ON FOLDER NAME, IF NOT SET ABOVE
if( !$title ) { $title = clean_title(basename(dirname(__FILE__))); }
?>
完整的代码可以在这里下载:https://github.com/halgatewood/file-directory-list/blob/master/index.php
我在开始时遇到问题:
$image = ImageClass::getImage('bg.jpeg','myTitle');
$bg_img = explode(" ",$image);
$src = substr(strpos('"',$bg_img),strlen($bg_image)-1);
echo "<div style='background-image: url(".$src.");' ></div>
我想将图片作为背景,但是没有发生。怎么了?
更改答案:
<?php
echo "<div style='background-image: url('/bg.jpeg');' ></div>";
?>
<?php
/*
*** OPTIONS ***/
// TITLE OF PAGE
$title = "ARQUIVOS PROPAR";
// STYLING (light or dark)
$color = "dark";
等等。
答案 0 :(得分:0)
不需要所有这些, 您想要实现的目标要简单得多。
假定此代码位于index.php
和您服务器的目录结构中:
/some-folder/
/index.php
/bg.jpeg
只需将其链接为纯HTML格式即可
<?php
echo "<div style=\"background-image: url('/bg.jpeg');\" ></div>";
?>
如果您不希望它是动态的,即图像文件的名称位于变量内,则
<?php
$my_image = 'bg.jpeg';
echo "<div style='background-image: url($my_image);' ></div>";
?>
重要提示:所有编程语言都是逐行执行的,该提示不仅适用于PHP,还适用于HTML Learn More
例如,假设您的页面返回浏览器的html结构如下所示,并且您想将背景应用于body
标记
<html>
<head><head>
<body>
<nav>Some dummy navigation</nav>
<div>welcome to my website</div>
<footer>Copyright</footer>
</body>
</html>
仅将我的代码复制并粘贴到页面顶部将导致
<div style="background-image: url('bg.jpeg');" ></div>
<html>
<head><head>
<body>
<nav>Some dummy navigation</nav>
<div>welcome to my website</div>
<footer>Copyright</footer>
</body>
</html>
但是这在html输出的顶部创建了一个空的div
标记,我希望它通过body
标记将背景应用于!!!!!!
-发生这种情况是因为echo
被用于在执行后立即将输出发送到浏览器。因此,由于您将我的代码复制到了脚本的顶部,因此html输出也位于顶部。
但是当我希望将其应用于页面的<div style="background-image: url('bg.jpeg');" ></div>
时为什么回显body
?
-因为echo语句读取"<div style=\"background-image: url('bg.jpeg');\" ></div>";
作为其输出。
好,但是如何将背景图像应用于身体呢?
如前所述,代码是逐行执行的,因此要将样式应用于页面的body
标记,您需要在body
标记附近调用它,并将其修改为不输出当前的div。
所以假设您的index.php
是:
<?php
$my_image = 'bg.jpeg';
echo "<div style='background-image: url($my_image);' ></div>";
?>
<html>
<head><head>
<body>
<nav>Some dummy navigation</nav>
<div>welcome to my website</div>
<footer>Copyright</footer>
</body>
</html>
您需要将其更改为-
<?php
$my_image = 'bg.jpeg';
// don't echo any thing here
?>
<html>
<head><head>
<body style="background-image: url('<?php echo $my_image; ?>')">
<!-- apply the style to body -->
<nav>Some dummy navigation</nav>
<div>welcome to my website</div>
<footer>Copyright</footer>
</body>
</html>
希望我的解释很好:)