• HTML用table布局排版 padding清零


    之前博文:HTML布局排版2如何设置div总是相对于页面居中 中是用div进行排版的,div是切了三条,顶部的图片,下部的图片,中间的平铺条,中间的div不设高度,根据内容,该区域的大小不固定,便于后期增删内容不用再改样式。

    前面的博文用div平铺的,此外,用table也能实现这个效果,table需要注意要把td的padding清零,否则td单元格里上下有padding,会出现裂缝。图片高度是按照单元格高度裁剪的,所以主要是上下padding引起的。
    如图,第一个table排版中td里没有设置padding是0,在浏览器开发者模式里可以看到有padding存在。
    第二个table排版中td里都设置了padding是0,所以没有裂缝。

    图片都是根据单元格大小裁剪的,图片尺寸和单元格大小一致。
    如图,第一个table里出现了裂纹,底部的图还出现了一条线,原因就是由于padding的存在导致单元格本身高度高于图片切片裁剪的高度。
    第一个td,剩下的区域显示了一条白色线,裂纹状(顶图上边有白色区域)
    第二个td由于是平铺,把多出来的pddding铺上了。
    第三个td由于是底图,底图的最上方不是白色区域,是颜色,多出来的部分被铺上了顶面的图片。(底图上有颜色,所以平铺处理底图顶部的颜色)

    测试代码:

    <body>
    <h5>存在padding,有裂缝和问题的:</h5>
    <div id="t2">
    <table width="900px" border=0 style="border-collapse:collapse;">
    <tr>
        <td width="900px" height="165px" style="background-image:url(./images/top.png);"></td>
    </tr>
    <tr>
        <td width="900px" style="background-image:url(./images/mid.png);padding-left:50px;padding-right:50px;">官网样例是混合部署LodopFuncs.js里已经写好了判断。<br>
    客户端是浏览器支持np插件,是32位浏览器,就会提示下载32位的Lodop插件:install_lodop32.exe<br>
    客户端浏览器支持np插件,是64位浏览器,就会提示下载64位的Lodop插件:install_lodop64.exe<br>
    客户端浏览器不支持np插件(判断如高版本谷歌火狐等),会提示下载C-Lodop方式: CLodop_Setup_for_Win32NT.exe</td>
    </tr>
    <tr>
        <td width="900px" height="75px" style="background-image:url(./images/bottom.png);"></td>
    </tr>
    </table>
    </div>
    
    <h5>清除padding,正常的:</h5>
    <div id="t1">
    <table width="900px" border=0 style="border-collapse:collapse;">
    <tr>
        <td width="900px" height="165px" style="background-image:url(./images/top.png);padding:0px;"></td>
    </tr>
    <tr>
        <td width="900px" style="background-image:url(./images/mid.png);padding:0px;padding-left:50px;padding-right:50px;">官网样例是混合部署LodopFuncs.js里已经写好了判断。<br>
    客户端是浏览器支持np插件,是32位浏览器,就会提示下载32位的Lodop插件:install_lodop32.exe<br>
    客户端浏览器支持np插件,是64位浏览器,就会提示下载64位的Lodop插件:install_lodop64.exe<br>
    客户端浏览器不支持np插件(判断如高版本谷歌火狐等),会提示下载C-Lodop方式: CLodop_Setup_for_Win32NT.exe</td>
    </tr>
    <tr>
        <td width="900px" height="75px" style="background-image:url(./images/bottom.png);padding:0px;"></td>
    </tr>
    </table>
    </div>
    </body>

    图示:

    单元格大小和图片大小是一致的,但是平铺的时候高度超出了一点,导致上图和下图出现问题。
    经过浏览器自带的开发者模式查看到,原来是td有默认的padding,清除后就好了。
    也可以算上padding的大小对图片进行裁剪,但是那样不如td和图片一致比较好。

  • 相关阅读:
    java堆
    本地方法栈
    java虚拟机栈
    Java 程序计数器
    面向对象 基本概念 复习
    if __name__=='__main__'
    偏函数与模块
    可变参数与关键字参数(复习材料)
    匿名函数
    闭包
  • 原文地址:https://www.cnblogs.com/huaxie/p/11578661.html
Copyright © 2020-2023  润新知