本文关键词:dede 友情链接间距
做站十年,我见过太多新手站长在DedeCMS(织梦)上栽跟头,而且栽的坑都差不多。今天我就专门来聊聊这个让人头秃的问题:友情链接间距。
说实话,每次看到后台生成的友情链接代码里,那些乱七八糟的 或者,我就一肚子火。明明在后台设置里看着挺整齐,一发布到前台,要么链接挤成一团,要么中间隔得能跑马。这种体验简直糟透了,用户看着难受,搜索引擎看着也费劲。很多同行为了这个调CSS调得头发掉了一把,最后发现根本没用,因为根源不在样式表,而在Dede自带的标签代码里。
咱们得先搞清楚,Dede默认的{dede:flink}标签是怎么工作的。它默认会在每个链接后面加一个空格或者换行,这就是导致间距混乱的罪魁祸首。你就算把CSS里的margin设成0,它那个HTML结构里自带的 也在那儿杵着,怎么调都别扭。
我有个土办法,特别简单,不用改核心文件,不用写复杂的JS,只要改一下模板里的调用代码。
首先,打开你的友情链接模板文件,通常是flink.htm或者你自定义的友情链接页面。找到那个{dede:flink}标签。
原来的代码长这样:
{dede:flink row='24'/}
别急着加样式,先把这个标签里的默认输出逻辑给“扒”了。我们不需要它自动加的那些多余的空格。你可以尝试用更纯净的SQL调用,或者修改标签参数。但最稳妥、最让我这种老鸟觉得安心的办法,是直接用type='textall'或者自定义类型,配合CSS去控制。
不过,如果你想彻底根治,我推荐你换个思路。别指望Dede那个标签能完美适配现代网页布局。你可以试试把链接数据导出来,手动整理成HTML列表,或者写一个更简单的调用代码。
比如,你可以这样写:
{dede:flink type='text' row='24' titlelen='24'}[field:link /]{/dede:flink}
注意,这里的关键是去掉默认的分割符。如果还是有问题,那就直接在CSS里处理。给你的友情链接容器加一个类名,比如.friend-links,然后设置:
`css
.friend-links a {
display: inline-block;
margin: 0 10px 10px 0; / 这里控制间距,右边和下边 /
padding: 5px 10px;
background: #f5f5f5;
border-radius: 4px;
}
`
这样写,不管Dede后台生成的代码里有多少个 ,你的CSS都会把它们统一格式化。因为display: inline-block会忽略掉文本节点里的空白符,只认你的margin。
但是,这里有个坑。有些老版本的Dede,标签里会强制输出 我还发现一个现象,很多站长喜欢用插件来管理友情链接。说实话,能不用插件就不用。插件多了,网站加载慢,还容易出Bug。Dede本身的功能虽然简陋,但足够用。只要你懂一点HTML和CSS,手动调一下模板,比装十个插件都管用。 另外,提醒一下,友情链接的权重传递是存在的,但别太迷信。保持链接的相关性,定期清理死链,比纠结那几像素的间距更重要。如果链接间距让你这么痛苦,说明你的网站基础代码可能有点乱,趁这个机会清理一下模板,把多余的注释和空格都删了,对SEO也有好处。 最后,如果你试了上面这些方法,间距还是不对,那大概率是你浏览器缓存没清,或者CSS优先级被覆盖了。按F12打开开发者工具,检查元素,看看是哪个样式在捣鬼。通常把 折腾完这些,你会发现,其实Dede也没那么难搞。关键是要懂它的逻辑,而不是盲目地套模板。希望这篇分享能帮到你,别再为那几个空格头疼了。 本文关键词:dede 友情链接间距。这时候,你得去后台检查友情链接的类型。如果是“文字链接”,尽量选“全部显示”或者自定义显示数量。别让它自动分页,自动分页生成的代码里全是!important加在margin上就能强制生效,虽然我不推荐滥用!important,但在调试阶段,它能帮你快速定位问题。