2012年8月5日星期日

Bootstrap的input元素变得很窄、显示不正常等情况的解决

某天,我写了个带表单的ftl页面,用的twitter bootstrap,结果用户名和密码的输入框上下距离变得好窄,也可以说是好矮,高一点的字幕显示不全。
折腾半天还是从网上找到了结果。
参见:
https://github.com/twitter/bootstrap/issues/170
在页面最上方加上<!DOCTYPE html>
结构变成如下
<!DOCTYPE html>
<html>
...
</html>
之后input的高度就对了。
当时原理没弄明白。
关于<!DOCTYPE html>:
http://www.w3school.com.cn/tags/tag_doctype.asp

这在XHTML的要求里似乎是必须的,在w3school的网站有XHTML的教程。我从此吸取教训,以后写html文件时,尽量符合XHTML的严格要求,保证页面在各种浏览器下(当然,IE实在不对就算了)正确显示。

windows 7 安装完第一次重启从硬盘引导后在黑屏处光标闪啊闪进不了系统的解决方案

本文写于2012-07-10
我决定近期把一些我以前发在别处的我觉得有价值的文章转发到这里,以便遇到这些问题的人搜索到。
博主有回帖必沉、不为人所关注的特性,若能对偶然路过的读者有所帮助,我深感欣慰。



今天,给一台Thinkpad E10安装win7。原来装的是xp系统,各种没杀毒软件,而且由于国产软件弄的千疮百孔。
从U盘引导后正常安装,之后重启,开始硬盘引导进入下一阶段,于是遇到了黑屏,左上角光标闪啊闪就是进不了系统启动页面的情况。
这不由得使我想起了研究生面试时计算机专业的同学被问的问题,系统是怎么启动的?我没学过相关知识完全记不得。
后来从Google上搜了一下也没有详细解决办法。
再后来看到一篇关于E10安装xp时修改BIOS的硬盘模式的文字,于是我进入BIOS设置检查了相关设置,将硬盘模式从compatible(兼容的)改为AHIC。
保存后重启,正常启动了。
——————废话分割线——————————
关于AHIC参见百度百科http://baike.baidu.com/view/915161.htm

最后吐槽一下,诚然操作系统、软件、硬件刚出来的时候有的会有兼容性问题,但是整天抱着旧的不放也会出现兼容性问题(过时),而且旧的无法享受更新升级带来的好处,被厂商抛弃的产品漏洞也不会再被修补。
至今甚至还有不明真相群众质疑xp的兼容性……那去装Windows 95好了。
再说一点题外话,我十分不喜欢C和C++,就因为常用的开发工具VC6.0在Windows7下运行非常容易挂掉,兼容模式也不太好用,还得弄xp虚拟机,有关C类语言在Windows下的开发都用最新的VS系列,虽然有免费的Express免费版,但是远不如旗舰版强大,此外这东西占用很大的硬盘空间,明明装到D盘,C盘下却需要2G以上的空间,而且杂七杂八的组件很多,请神容易送神难,一旦安装了卸载起来很麻烦,安装是一块进来的卸载要一个一个弄,还容易失败,还不如重装整个系统。相比之下Java语言有很大的优势,但是部署开发环境也有点麻烦。
关于操作系统,Linux的桌面版虽然有了很大进步,但是还是有点太复杂了。如果想尝试Linux,在诸多发行版中我推荐Mint的LXDE版。
最后的最后,爱护自己的电脑,远离国产流氓软件。

用 kindlegen 将 html文件 转为mobi格式电子书的时候,在未换字体的kindle touch上打开发现字体不对的解决办法

昨天把刀剑神域新出的小说网络翻译版下了,然而txt的木有插图,于是自己写了个html,把插图丢进去,再用kindlegen转为mobi格式。

后来在我的kindle touch上打开发现字体问题很大,跟用内置浏览器打开中文网页似的,kindle touch阅读的时候正常的内置中文字体不是这样的,经过一番摸索我找到的解决办法。
以下内容涉及的web知识参考http://www.w3school.com.cn/
  1. 确保html存为utf-8(我用的notepad++,在格式里能设置查看方式,还能直接转换),很多时候用Eclipse等软件编辑含中文的jsp、xml、html文件汉字变乱码,就跟这个字符集神马的有关,我都统一存为utf-8。然后要强调一下,写html文件时,尽量符合XHTML的严格要求:http://www.w3school.com.cn/xhtml/index.asp
  2. 文件最前面要加上文档类型声明(之前我写网页用bootstrap出现了问题就是我没加这个):
    <!DOCTYPE html
    PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. 在<head></head>标签中加入以下css代码控制字体:
    <style type="text/css">
    body{
    font-family: arial, sans-serif;
    }
    </style>
  4. 在<head></head>标签中加入类型声明:
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  5. 设置<html>标签的属性:
    <html  xmlns="http://www.w3.org/1999/xhtml" lang="zh" xml:lang="zh">
我并不清楚具体哪部解决了我遇到的这个问题,但是写代码永远是越规范越好,否则容易出奇怪的问题,并不是糊弄过去就可以的。
可在线验证html文件:http://validator.w3.org/ 
不规范的地方、未闭合的标签啥的都能检查出来。
再附上一些自制电子书的教程,看txt时没插图没目录还是挺郁闷的。我还设想用这个将漫画生成mobi格式,自从升级后原生支持横屏了,可解决KT看漫画的难题:
Amazon Kindlegen 使用指南:http://bbs.duokan.com/forum/thread-19999-1-1.html
以及一些参考资料:http://blog.sina.com.cn/s/blog_5c0175790100bdg5.html
官方参考资料请Google一下Kindle Publishing Guideline

今天还试了一下从opf生成带封面和目录并且能跳转的mobi格式电子书,效果很不错,但是写xml和html太累了。
本文写于2012-07-31。