1.预热

css样式多如牛毛,我不可能一个一个去讲,那样好像背字典一样,我相信你们也不喜欢这样的方式。所以,我会在实战中慢慢和你讲解,然后,你记住一些重要的css属性就可以了。关键是,你要学会去查资料,最好的查资料方法,不是那种去W3C School上,一页一页看过去,那样的话不知道要看到什么时候,而是应该去看一些网页的源码,看看他们的网页是怎么做起来的,用了哪些css属性?这里面,肯定有很多css属性你连见都没见过,我的建议是,先大概去猜一下,然后用浏览器的F12调试功能去倒腾倒腾。不需要你对每一个css属性都了如指掌,你只要大概理解意思,然后掌握一些基本的css属性就可以了。普通的网页能自己画出来,复杂的网页能从别的地方拷贝过来,并且看懂,就可以了。

那么今天呢,我带大家用table来做一个简单的demo,通过一个具体的例子,来看一下table怎么用?首先,打开Eclipse,新建一个HTML页面。

首先,我们要在body区域弄出个空间来,专门存放这个table。之前我们都是直接在body上面弄的,而事实上,在实际开发中是不会这么做的。好的,我们来一个div元素,加一个class叫做wrap,wrap表示包裹,我们需要一个div来包裹table。

接着,在head元素上挂载一个style元素,专门用来设置样式表。接着,给wrap设置一点点样式。

效果:

如何让这个div元素居中呢?是不是只要让它左右两边的margin自适应就OK了呀?OK,我们加上:

哇,是不是有了,太棒了。现在我做一个事情,看好,我把wrap变成span元素,会怎样?

看效果哈:

卧槽,画风突变,这是什么情况?对了,span是什么元素啊,是不是行内元素啊。我们给一个行内元素设置宽度和高度是没有效果的。所以就变成了这样,那么,怎么办呢,我们需要把span强制转换成块级元素,是不是就好了呀?

效果:

2.编写工具类样式文件 tool.css

在刚才的例子中,我们把一个div元素或者span元素都相对于父元素居中显示了,我现在请问一下大家,在实际开发中,让一个元素相对于父元素居中显示,这样的需求是不是很常见呀?

那有没有什么办法,让我们下次再遇到这个需求的时候,直接用起来就行了呢?答案肯定是有的,我们可以封装一个通用的工具类,然后把一些经常要用到的样式放进去,就OK了。现在我们来编写一个tool.css工具类。

引入这个css:

然后,在span元素上绑定对应的class:

这样就OK啦。

3.终于开始画table了

现在,我们开始画一个table,比如来一个一行三列的table:

为了看出效果,我们需要另外给这个table元素,tr和td元素设置样式:

刷新页面:

就这样,一个简单的table就画好咯~

4.合并单元格

既然学table,肯定会遇到一个问题,那就是怎样合并单元格呢?

比如,我希望在第二列和第三列下面增加一行,怎么办?很简单,我只需要在后面再写一个tr,里面有两个td:

这个tr希望和它平级:

可惜效果不对,这一行被挤下来了,原因很简单,因为第一列没有占据两行,所以如果我们硬是在后面添加一行,就会被挤下来。解决方法,是在第一列的td元素上,绑定一个rowspan属性,设置为2:

这样就可以了吧,这就是所谓的行合并,那么怎样列合并呢?

如图,我在下面重新写了一个tr,这表示重起一行,然后,挂载一个td元素,并且绑定colspan属性,这个属性的含义就是列合并。

各位,再看一下之前的这个例子,是不是一共有三列啊,那么我就colspan=3,表示合并三列,效果:

还有个问题,这个table没有默认占满父容器,那么我就得手动设置它的width为100%:

这样是不是就好了呀?

5.画一张请假单?

接下来我们加快一点进度,来做一个请假单吧。我们把颜色调成黑色。

再添几行:

把文字填进去:

最后是班主任审批:

效果:

这样就有一个问题,对于领导批示,宽度应该比较窄才会比较好看,可是现在的话明显太宽了,有没有什么办法呢?第一个想到的,肯定是给它设置宽度:

刷新页面,无效,这又是什么原因呢?原来,现在我们每一行是三列,第一列就只能这么宽,除非我们给它多加一列。

这表示给第一行第一列设置列合并为2,那么每一行就有了4列。一共有几列是以第一行为准的。这样一来,下面这几个地方也要跟着改:

最后,手动调一个高度出来:

接着,就好像撘房子一样,房子搭好了,就可以把一些辅助工具撤销掉了,比如border。

欢迎关注我的个人博客,http://www.xiaotublog.com/ ,不定期分享各种资料。

HTML&CSS Table元素详细解说的更多相关文章

  1. css确定元素水平居中和垂直居中

    ---恢复内容开始--- 首先,我们在了解如何通过css了解元素水平和垂直居中之前,先要了解下html都有哪些元素,这些元素与偶有哪些分类,因为不同类别的元素的水平垂直居中方法是完全不同的,究其根本当 ...

  2. 关于table元素的认识

    表格是网页上最常见的元素,但是,现在对很多刚入行的前端们那是谈table色变.那是为啥?这是表格的框架的简单.明了.在传统的网页中使用没有边框的表格来排版是非常流行.在web标准逐渐深入设计领域以后, ...

  3. css table 布局

    使用CSS表格 CSS表格能够解决所有那些我们在使用绝对定位和浮动定位进行多列布局时所遇到的问题.例如,“display:table;”的CSS声明能够让一个HTML元素和它的子节点像table元素一 ...

  4. CSS块元素与内联元素(转)

    为什么<a><span>这种标签定义width,height等CSS属性时会发现完全不生效? 因为它们不是容器,它们是内联元素,不是块元素 CSS 块元素与内联元素 关键字: ...

  5. 【HTML】table元素

    1.最简单的table <table> <tr> <th></th> </tr> <tr> <td></td& ...

  6. js分析 汽_车_之_家 js生成css伪元素 hs_kw44_configUS::before

    0.参考 https://developer.mozilla.org/zh-CN/docs/Web/CSS/Pseudo-elements https://developer.mozilla.org/ ...

  7. html/css 表格元素以及表格布局

    一,html之表格 1,一个完整的html表格所包含的元素 <!--一个完整的html表格--> <!--cellpadding代表单元格内的文字和单元格边框之间的间距--> ...

  8. css 使元素居中

    css使元素水平居中 1.对于行内元素的水平居中 给父元素设置text-align:center <div style="text-align:center;">居中显 ...

  9. CSS Table(表格)

    CSS Table(表格) 一.表格边框 border 指定CSS表格边框,使用border属性. 下面的例子指定了一个表格的Th和TD元素的黑色边框: table, th, td { border: ...

随机推荐

  1. 浅谈JavaWEB入门必备知识之Servlet入门案例详解

    工欲善其事.必先利其器,想要成为JavaWEB高手那么你不知道servlet是一个什么玩意的话,那就肯定没法玩下去,那么servlet究竟是个什么玩意?下面,仅此个人观点并通过一个小小的案例来为大家详 ...

  2. PHP5中PDO的入门教程

    PDO(PHP Data Object) 是PHP 5新出来的东西,在PHP 5.5中,更是强烈推荐使用PDO来处理数据库,将把所有的数据库扩展移到了PECL,那么默认就是没有了我们喜爱的php_my ...

  3. --@angularJS--路由、模块、依赖注入

    以下是演示angular路由切换的demo. 主页:index.html <!doctype html><html ng-app="bookStoreApp"&g ...

  4. 【angularjs】【学习心得】ng-class总结

    原文:http://www.imooc.com/wenda/detail/236998 今天来说一点angularjs中看起来很简单但是实践起来又有不少问题的ng-class吧 ----------- ...

  5. 界面编程与视图(View)组件

    一.视图组件与容器组件 Android应用的绝大部分UI组件都放在android.widget包及其子包.android.view包及其子包中,Android应用的所有UI组件都继承了View类. V ...

  6. bat-bat-bat (重要的事情说三遍)

    去年noip前prey亲授,当时就觉得这是个好东西!非常好!然后我就没学会.接着最近被安利小红的bat!!! 小红bat!!! get!!!谢小红!!! -----> http://www.cn ...

  7. MyBatis 使用foreach与其他方式的时候参数传递方式

    Mapper文件: <select id="selectPersonByIds" parameterType="map" resultMap=" ...

  8. ORA-02266: 表中的唯一/主键被启用的外键引用

    http://www.cnblogs.com/cici-new/archive/2013/01/01/2841700.html 需要如下操作 先取消子表外键的外键约束,之后删除父表数据,最后再次启用外 ...

  9. HTML5 JavaScript API

    W3C官方指定的HTML5规范已经修订了很多次,HTML5这个概念是与javascript API相捆绑的语义标记.在过去这些年中,HTML5这个词所指代的范围正以惊人的的速度膨胀,某种程度上已经成为 ...

  10. 微信小程序维护登录态与获取用户信息

    前言. 微信小程序的运行环境不是在浏览器下运行的.所以不能以cookie来维护登录态.下面我就来说说我根据官方给出的方法来写出的维护登录态的方法吧. 一.登录态维护 官方的文档地址:https://m ...