百分比字符在html中不起作用



我正在尝试制作一个方法,为我制作一行中有图像的行我的代码:

function makeRow($name,...){
$r = '';
$r .= "<img src=img/mamet.jpg style=padding:3px width=100% height=100% >";
return $r;
}

但你看到宽度和高度后面的那个小"%"了吗?

它不起作用:(PHP双引号和单引号似乎对以下字符有问题:%(百分比)我该怎么办?我甚至试过这些:

%
\%
"%"
'%'

但仍然不起作用:(

CSS规则应该使用:赋值运算符而不是=运算符指定。您还缺少;EOL文字。

尝试以下操作:

function makeRow($name,...)
{
return '<img src="img/mamet.jpg" style="padding:3px; width:100%; height:100%" />';
}

假设OP实际上想要使用属性而不是CSS属性:

function makeRow($name,...){
$r = '';
$r .= '<img src="img/mamet.jpg" style="padding:3px;" width="100%" height="100%" >';
return $r;
}

这将不起作用的原因是它不再在HTML规范中。您不能在HTML 5的宽度和高度属性中使用百分比。

相反,把它们放在你的风格:

style="padding:3px; width:100%; height:100%"

尝试此功能

function imageTag($src, $attr=array(), $style=array()){
$img_tag = '<img src="'.$src.'"';
// check if atributes array is not empty
if(count($attr)){
foreach($attr as $name => $value)
$img_tag .= ' ' . $name . '="' . $value . '";';
}
// check if style array is not empty
if(count($style)){
$img_tag .= ' style="'; 
foreach($style as $name => $value)
$img_tag .= $name . ':' . $value . ';';
$img_tag .= '"'; 
} 
$img_tag .= ' />';
return $img_tag;
}

功能用途:

echo imageTag('images/image.jpg',array('title' => 'Image title', 'alt' => 'image_alt'), array('height' => '100%', 'width' => '100%', 'padding' => '5px'));

最新更新