1

我的问题是我不想在盒子之间留出空隙。

请建议如何消除这个差距谢谢:)

我的 CSS

.menu:link,.menu:visited
{
font-weight:bold;
color:#FFFFFF;
background-color:#98bf21;
width:80px;
text-align:center;
padding:4px;
text-decoration:none;
}
.menu:hover,.menu:active
{
background-color:#7A991A;
}

我的菜单 PHP

<?php
echo '<a class="menu" href="/test/index.php">Home</a>
<a class="menu" href="/test/profile.php">Profile</a>
<a class="menu" href="/test/settings.php">Settings</a>
<a class="menu" href="/test/image.php">Image</a> 
<a class="menu" href="/test/logout.php">Logout</a>';
?>
4

3 回答 3

1

删除链接标签之间的空格。

jsFiddle 示例

<a class="menu" href="/test/index.php">Home</a><a class="menu" href="/test/profile.php">Profile</a><a class="menu" href="/test/settings.php">Settings</a><a class="menu" href="/test/image.php">Image</a><a class="menu" href="/test/login.php">Logout</a>

或者

<a class="menu" href="/test/index.php">Home</a><!--
--><a class="menu" href="/test/profile.php">Profile</a><!--
--><a class="menu" href="/test/settings.php">Settings</a><!--
--><a class="menu" href="/test/image.php">Image</a><!--
--><a class="menu" href="/test/login.php">Logout</a>

或者只是将它们向左浮动

.menu {
    float:left;
}
于 2013-03-01T04:44:58.500 回答
1

你的字符串中有空格。

您可以参考以下创建字符串的方法

其中 $url 是 href 并且 $displayText 是要显示的文本

$menu .= sprintf('<a class="menu" href="%s">%s</a>' , $url , $displayText);

例子

$menu = sprintf('<a class="menu" href="%s">%s</a>', '/test/index.php' , "Home");
$menu .= sprintf('<a class="menu" href="%s">%s</a>', '/test/profile.php' , 'Profile');
$menu .= sprintf('<a class="menu" href="%s">%s</a>', '/test/settings.php' , 'Settings');
$menu .= sprintf('<a class="menu" href="%s">%s</a>', '/test/image.php' , 'Image');
$menu .= sprintf('<a class="menu" href="%s">%s</a>', '/test/login.php' , 'Logout');

echo $menu ;
于 2013-03-01T04:54:55.433 回答
1

这是您的问题的简单解决方案是:

不要在所有锚标记之间使用间隙。将它们保持在一条线上,没有任何间隙。你的问题将得到解决。

看下面的演示

Visit http://jsfiddle.net/creators_guru/6B9ea/
于 2013-03-01T05:16:52.953 回答