• IE浏览器A标签下包含img诡异BUG

    看来我真的是跟IE啃上了,这会不只是IE6,就连IE7、IE8都发现有问题。先来阐述下事情缘由:项目里有一个页面其中一排图片是被A标签包含着的,正常情况下点击图片会链接到目标地址,可测试发现在IE下无法正常链接到目标地址。

    于是我自己写了一个Demo:

    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="utf-8" />
        <title>IE下诡异BUG</title>
        <style type="text/css">
          span {display:block;width:100px;height:100px;}
        </style>
      </head>
      <body>
        <a href="https://www.qttc.net" target="_blank">
          <span><img src="5.jpg" width="100" /></span>
        </a>  
      </body>
    </html>
    

    ...

    READ ALL

  • IE6除a标签外其它标签伪类解决!

    做前端样式都知道IE6伪类的问题,虽然这个问题到现在也不具有时效性,并且使用IE6的人也渐渐减少,但解决IE6伪类的方法还是值得借鉴。

    IE6似乎只对A标签伪类有效,但如今的页面架构以不同以往的简单。div、p、span、li等标签的伪类样式更是经常使用。目前解决IE6伪类的方法只能通过JavaScript去实现,比如hover伪类就相对于JavaScript的移入移出事件。

    自己写JavaScript

    比如要给DIV一个hover伪类,触发时背景颜色改变为红色。

    div { width:300px; height:300px; background:blue;}
    div:hover { background:red; }
    

    ...

    READ ALL

  • IE6不能加载样式,原来是编码导致!

    我向来是鄙视IE浏览器的,它总是不合群,特别是IE6。痛苦的是虽然微软已经开始IE6倒计时,国外使用IE6者几乎绝灭,而国内IE6用户依然众多。公司不肯放弃这些特殊用户,只得累生死调IE6兼容。

    今天这个IE6出现的错误比较独特,页面打开后跟其它页面效果差别非常大,等于说是IE6下完全没有样式的HTML页面。首先得确定问题方向,因为样式文件是外链的,所以我在样式文件里给body来个背景颜色,结果发现除IE6以外其它浏览器背景都能正常变色。于是我在html页面直接加上body样式,这下IE6才生效。

    html页面加写样式对于IE6有效,CSS文件写样式对于IE6无效只能说明IE6下无法加载样式文件。

    ...

    READ ALL

  • 按代码量算钱,伤不起啊!

    早闻不少公司按代码量计费,如今我怀疑公司也这么干了。

    我不知道按代码量算钱在财务部那里是怎么算的?不过百分九十九几乎都是把代码放到一个工具里计算行数或者字数来确定你的工作量,然后按字母/按行算钱。难怪有些人被逼无奈把一行代码完成的事拆成N行来写,注释也更多了一些,空白也更多了一些,代码越臃肿工钱越多。

    每个人都有自己的代码风格,包括我。我历来追求精简,提高代码运行效率,因此我的代码拿到了财务部那里经过工具一算就是少得可怜的工钱。想想有点亏,我应该尽量把代码写的多一些。甚至可以这样

    function(){
      $a=1;
      $b=$a;
      $c=$b
      ...
      return $c;
    }
    

    ...

    READ ALL

  • 文件名编码后浏览器访问提示找不到文件解决方法

    昨天做一个项目,其中有一个需求是每一张图片对应一小段文字对图片的说明,普通的做法是新建一个表然后把图片名与说明文字都记录到数据库内。仔细考虑后感觉这个应用不要数据库也能完成,我实现的方案是把说明文字url encode后当做文件名,这样当我读取文件的时候再把文件名url decode就可以后驱图片的文字说明了。

    可是通过浏览器访问图片时却提示找不到文件,如有一张图片的说明文字为琼台博客,url encode后生成的文件名如下

    %E7%90%BC%E5%8F%B0%E5%8D%9A%E5%AE%A2.jpg

    于是我通过浏览器访问图片,提示找不到

    ...

    READ ALL

  • Python除法不能求小数位数解决方法

    求一个算式

    a = 1
    b = 2
    c = 3
     
    print c * (a / b)
    

    运行结果总是0,反复检查拆开以后,发现在Python里,整数初整数,只能得出整数

    也就是ab这个结果永远是0,只要把a或者b其中一个数改成浮点数即可。

    a = 1
    b = 2
    c = 3
     
    print c * (a / float(b))
    print c * (float(a) / b)
    

    这样才能准确算出ab的正确结果,当然,如果ab大,并且不需要小数位数部分可以不用float。

    如:

    a = 1
    b = 2
    c = 3
     
    print c / a # 3
    print c / b # 1
    print c / float(b) # 1.5
    

    ...

    READ ALL

  • web.py获取上传文件名一个需要注意的细节

    直接切入主题,从HTML页面上传文件,Python接收处理。但其中发现有些小问题,把它写出来,算是积累吧!

    HTML页面代码:

    <form action="/admin/addgoodsaction/" method="post" enctype="multipart/form-data">
      <input type="file" name="image" />
    </form>
    

    Python处理部分代码:

    i = web.input()
    
    return i.image.filename
    

    执行结果切提示:

    <type 'exceptions.AttributeError'> at /admin/addgoodsaction/
    'str' object has no attribute 'filename'

    ...

    READ ALL

  • Python version 2.7 required, which was not found in the registry

    安装PIL库的时候,直接提示

    Python version 2.7 required, which was not found in the registry

    如图:

    full

    大意是说找不到注册表,网上搜索解决方案。

    新建一个register.py文件写入代码:

    import sys
      
    from _winreg import *
      
    # tweak as necessary
    version = sys.version[:3]
    installpath = sys.prefix
      
    regpath = "SOFTWARE\\Python\\Pythoncore\\%s\\" % (version)
    installkey = "InstallPath"
    pythonkey = "PythonPath"
    pythonpath = "%s;%s\\Lib\\;%s\\DLLs\\" % (
        installpath, installpath, installpath
    )
      
    def RegisterPy():
      try:
        reg = OpenKey(HKEY_CURRENT_USER, regpath)
    
      except EnvironmentError as e:
        try:
          reg = CreateKey(HKEY_CURRENT_USER, regpath)
          SetValue(reg, installkey, REG_SZ, installpath)
          SetValue(reg, pythonkey, REG_SZ, pythonpath)
          CloseKey(reg)
        except:
          print "*** Unable to register!"
          return
        print "--- Python", version, "is now registered!"
        return
    
      if (QueryValue(reg, installkey) == installpath and
        QueryValue(reg, pythonkey) == pythonpath):
        CloseKey(reg)
        print "=== Python", version, "is already registered!"
        return
    
      CloseKey(reg)
    
      print "*** Unable to register!"
      print "*** You probably have another Python installation!"
    

    ...

    READ ALL

  • web.py模板如何使用目录层级

    web.py的模板使用非常容易,但有时候我们需要做目录层级以便管理。那么如何使用目录层级的模板呢?

    通常我们使用模板的时候先声明模板文件夹

    render = web.template.render('templates')
    

    使用templates文件夹下index.html模板

    return render.index()
    

    使用templates文件夹下list.html模板

    return render.list()
    

    以上所有的html模板文件只放在tempates目录下,如果要在templates下建目录并使用目录下的模板文件只需加目录名称即可。

    ...

    READ ALL

  • Linux awk命令

    Linux有一个非常好用的命令awk,很多场景下都需要它,比如我要看看我的Nginx有没有运行,如果运行的话我就要杀掉它

    获取NginxPID的命令如下:

    [root@test01 ~]# ps -le | grep nginx
    5 S     0 12601     1  0  80   0 - 31048 sigsus ?        00:00:00 nginx
    5 S     0 30122 12601  0  80   0 - 31164 ep_pol ?        00:00:00 nginx
    5 S     0 30123 12601  0  80   0 - 31164 ep_pol ?        00:00:00 nginx
    

    ...

    READ ALL