问题描述

作为一名 emlog 爱好者,笔者闲暇时间经常为 emlog 系统的 Github 仓库里( https://github.com/emlog/emlog )提 pr 和修修补补,就像其他知名的开源软件有源源不断的世界各地的技术人员为它们助力成长。

(pr 的意思大概就是,提交代码给仓库)

在前两天课余时间,为 1.8.0 版本进行维护开发时,一个疏忽,在一个 pr 中忘记将 default 模版底部的 <p> 标签转为 <div>,因此造成了一个很可笑的 bug,即如果后台设置了 ICP 备案,那么底部信息会恐怖的变成下图那样(底部内容向左对齐了,原先的是居中)。

这是因为,在修复群成员提出的一个反馈优化意见时,忽略了显示底部自定义内容的部分这里是 <p> 标签。下面的代码是 1.8.0 版本中的代码内容,可见到 < p > 中嵌套了 < div >。

位置 /opt/homebrew/var/www/my/0325/content/templates/default/footer.php

<div class="container">
<p class="text-center">
<?php
if(!empty($icp)){
echo '<div><a href="https://beian.miit.gov.cn/" target="_blank">'.$icp.'</a></div>';
}
?>
<?= $footer_info ?>
<?php doAction('index_footer') ?>
</p>
</div>

前端界中众所周知,<p> 里面是不能插入块级元素的,比如 <div>、<p>、<pre> 等,所以这里的代码中 出现了 echo '<div><... 这种内容实在是荒谬。

当时没有看太多,也没进行测试,想当然的在 Github 的修改代码界面输入了 <div> ... 本以为就一个 HTML 而已,能出什么 bug,但没想到一个 1.8.0 一个大的版本号,出现这样可笑的 bug。

所以吸取教训!!!以后一定要在进行测试后再提交代码。幸好是前端,如果是后端的话,出现这样级别的 BUG 代码将会恐怖至极。

解决方案

当然,目前是有解决方案的。html 的 bug ,40% 可以用新增加的 CSS 解决, 60% 可以用新增加的 JavaScript 解决。

本 bug 在用户端的的解决即,在【系统后台】----【系统】----【设置】----【首页底部信息】添加如下代码。

<style>
footer .container {
text-align: center;
}
</style>

然后就行了,显示效果神奇般的就恢复正常了。



当然在未来的 1.8.1 中也有它的优化解决方案,就是把 < p > 改成 < div >。

其实在本地我原先的修改中,是已经更改成 < div > 的,并且还在 CSS 中进行了 div 的 CSS 样式(因为 p 元素默认有上下边距的),但提交代码时不知为何没提交上,所以 1.8.0 中的原来想法被迫要在 1.8.1 中实现。

当然,10 月 4 日早晨,经老王的提醒,其实这个多出来的 < div > 已经没有它存在的意义了。所以可以将 < div class="text-center" > 删除。把 .text-center 放在 .container 里。完美!等下次添加 feature 更新到 Github 仓库里。

当然这次 1.7.x --> 1.8.0 的更新还是挺不错的。修复了很多 bug,还有很多 feature。

系统自带模版在 emlog pro 1.8.0 底部信息错位问题暂时的解决方案的更多相关文章

  1. Android 系统自带图片裁剪功能(适配7.0、8.0、对了还有小米手机)

    前段时间写了如何获取相册和拍照之后的照片并且进行显示和上传,这一次是如何进行圆形图像制作,经常看我写的笔记的人会知道,我很懒.那么我就懒的自定义了,目前需求就用原生的就好了,大神的轮子,我会在后面进行 ...

  2. zabbix监控tomcat(使用jmx监控,但不使用系统自带模版)

    一,zabbx使用jmx监控tomcat的原理分析 1.Zabbix-Server找Zabbix-Java-Gateway获取Java数据 2.Zabbix-Java-Gateway找Java程序(j ...

  3. 如何在windows系统自带命令查看硬件信息?

    如何在windows系统自带命令查看硬件信息? 对于在windows下查看系统信息大家一定不陌生了,我现在说几个最常用的方法,对命令感兴趣的朋友看看,(给菜鸟看的,老手就不要笑话我了,大家都是从那个时 ...

  4. Notepad2替代系统自带的记事本

    事情是这样的,平时我经常把一些文字复制到记事本中编辑好了再复制到目标位置,可以在系统自带的记事本中替换删除一些内容,记事本小巧,占用很少的资源,我很喜欢:但今天复制的内容中有很多数字和一些我不想要的内 ...

  5. 如何获取安卓系统自带应用的package和activity

    之前在做appium自动化测试的时候,参考网上的例子,运行安卓系统自带的app,所以,就需要获取系统自带的package(包名)和activity.这里简单记录一下,不一定适合所有的系统应用. 运行环 ...

  6. 重装系统后如何删除系统自带的office2003

    背景:操作系统重装后,系统自带的office2003版本太低不好使用,需要安装更高版本的如2010,但是卸载时提示“无法打开此修补程序包……”,从而无法卸载.经网上查询,采用以下解决办法: 在注册表中 ...

  7. C语言中使用系统自带的快排函数

    题目 . 德才论 () 宋代史学家司马光在<资治通鉴>中有一段著名的"德才论":"是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人.凡取 ...

  8. Ios二维码扫描(系统自带的二维码扫描)

    Ios二维码扫描 这里给大家介绍的时如何使用系统自带的二维码扫描方法和一些简单的动画! 操作步骤: 1).首先你需要搭建UI界面如图:下图我用了俩个imageview和一个label 2).你需要在你 ...

  9. Broadcom有线网卡在Windows 8/8.1/10下使用系统自带驱动会断网的解决办法

    出处:qiuyi21.cnblogs.com 1.下载最新正式版驱动程序 上Broadcom官方网站http://www.broadcom.com/support/ethernet_nic/downl ...

  10. Android去掉listView,gridView等系统自带阴影

    当我们使用listView的时候,拉到顶,或是拉到底部的时候,我们会发现有系统自带的阴影效果出现,不同手机出现的颜色可能还会不一样. 在以前我始终都有注意到此问题,一直以为是系统自带的,不能去掉.也没 ...

随机推荐

  1. Web网页端IM产品RainbowChat-Web的v5.0版已发布

    一.关于RainbowChat-Web RainbowChat-Web是一套Web网页端IM系统,是RainbowChat的姊妹系统(RainbowChat是一套基于开源IM聊天框架 MobileIM ...

  2. IM全文检索技术专题(四):微信iOS端的最新全文检索技术优化实践

    本文由微信开发团队工程师" qiuwenchen"分享,原题"iOS微信全文搜索技术优化",有修订. 1.引言 全文搜索是使用倒排索引进行搜索的一种搜索方式.倒 ...

  3. Hugo 静态博客部署

    I. 前提条件 1.1 安装 Hugo 1.1.1 Windows 1.下载 Hugo(建议下载扩展版):Hugo(github.com) 2.解压 Hugo 压缩包到指定目录. 3.[Win + R ...

  4. 解读ENS网络连接,面向多云多池网络的高效互联

    本文分享自华为云社区<ENS网络连接,面向多云多池网络的高效互联>,作者:华为云Stack ENS研发团队. 1.ENS网络连接服务场景详细介绍 ENS网络连接通过统一建模和全局管控实现跨 ...

  5. c# 调用DeepAI

    包括画卡通画,找出2张图片的相似度,电脑做梦的图片生成,利用GTP-2的文本续写. using System; using System.Collections.Concurrent; using S ...

  6. runoob-TypeScript 教程

    https://www.runoob.com/typescript/ts-tutorial.html TypeScript 是 JavaScript 的一个超集,支持 ECMAScript 6 标准( ...

  7. dart子类的继承

    1 Dart中类的继承 1.子类使用extends关键字来继承父类 2.子类会继承父类里面可见的属性和方法,但是不会继承构造函数 3. 子类能够复写父类的方法 getter和setter方法 2Dar ...

  8. AI时代云动力:新一代弹性计算云主机开启智能计算新纪元!

    随着信息技术的飞速发展,云计算在企业数字化转型中发挥着愈发重要的作用. 弹性计算作为云计算技术的重要组成部分,以灵活的资源分配.高可用性等优势,在数字化转型中扮演着举足轻重的角色. 为打造更加卓越的上 ...

  9. Zabbix Server 5.0 安装及Zabbix5.2 一键部署脚本

    zabbix 5.0 安装部署 1.关闭防火墙和selinux,安装repository源 [1]关闭防火墙,SELINUX firewall-cmd --state #查看默认防火墙状态,关闭后显示 ...

  10. 大数据HDFS集群相关概念

    一.Zookeeper服务 端口 描述 配置路径 2181 主要使用端口,对cline端提供服务.连接方式jdbc:hive2://ip:2181 conf/zoo.cfg中clientPort 21 ...