1.根据功能,把不同的部分写出来,方便扩展

<div class="content"><!-- 内容开始 -->
  <section class="green-section">
    <div class="wrapper">
      <h2>一个标题</h2>
      <div class="hr"></div>
      <p class="sub-heading">Lorem ipsum dolor sit amet, consectetur adipisicing elit, laborum.</p>
    </div>
    <div class="icon-group">
      <span class="icon" >item1</span>
      <span class="icon" >item1</span>
      <span class="icon" >item1</span>
    </div>
  </section>
  <section class="gray-section">
    <div class="article-preview">
      <div class="img-section">
        <img src="data:images/pic01.jpg" alt="">
      </div>
      <div class="text-section">
        <h2>又一个标题</h2>
        <div class="sub-heading">
          我是副标题
        </div>
        <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, laborum.</p>
      </div>
    </div>
    <div class="article-preview">
      <div class="img-section">
        <img src="data:images/pic01.jpg" alt="">
      </div>
      <div class="text-section">
        <h2>又一个标题</h2>
        <div class="sub-heading">
          我是副标题
        </div>
        <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, laborum.</p>
      </div>
    </div>

  </section>

2.一旦子元素浮动,父元素就会探索到一个合适的值,现在的值就是0,需要进行清除浮动操作。

常用的清除浮动方法:

.article-preview:after {

  content:"";

  display:block;

  height:0;

  visibility:hidden;

  clear:both;

}

.article-preview{*zoom:1;}

还有可以写成这样:

.article-preview:after {

  content:"\200B";/*Unicode字符里有一个“零宽度空格”,也就是U+200B,它本身是不可见的,所以可以省略掉 visibility:hidden */

  display:block;

  height:0;

  clear:both;

}

.article-preview{*zoom:1;}

另一种最新式方法:

.clearfix{
    overflow: auto;
    *room: 1;  //支持IE6
}
还有一种:

.article-preview:before,.article-preview:after {

  content:"";

  display:table;

}

.article-preview:after { clear:both; }/* For IE 6/7  */

.article-preview{*zoom:1;}

3.有时候两个模块之间会出现小缝隙,很可能是字体导致。在最外层加一个font-size: 0;进行处理。

4.每个元素里的内容,随着窗口变化,该元素扩大或缩小的时候,进行自适应。

.text-section > div{
  word-wrap: break-word;  /*允许对长的不可分割的单词进行分割并换行到下一行*/
  word-break: break-all;  /*规定非中文的换行规则,允许内容自动在单词内换行*/
  overflow: hidden;  /*超出的内容隐藏*/
  text-overflow: ellipsis;  /*超出的内容显示省略符号,clip直接修剪文本,string使用给定的字符串代表被修剪的文本*/
}

5.purple-section布局

<section class="purple-section">
  <div class="heading-wrapper">
    <h2>标题标题标题</h2>
    <div class="hr"></div>
    <div class="sub-heading">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod luptate velit esse
        cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non
        proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</div>
  </div>
  <div class="card-group">
    <div class="card"></div>
    <div class="card"></div>
  </div>
</section>

css扁平化博客学习总结(四)content代码实现的更多相关文章

  1. css扁平化博客学习总结(三)header代码实现

    页头.banner.正文.页脚的宏观布局 1.布局顺序的重要性: 由大到小,着眼最大的部分,慢慢细分. <body> <header><!-- 页头开始 --> & ...

  2. css扁平化博客学习总结(二)css样式重置

    css样式重置 方法一:不推荐使用,这么写会让网页解析速度变慢. *{ margin: 0; padding: 0;} 方法二:大家常用的写法,比较流行. body, html, div, block ...

  3. css扁平化博客学习总结(一)模块分析

    一.模块分析 1.每开发一个项目之前,首先要对项目进行一个大致规划,它到底要做什么功能,它有什么具体需求. 2.所以需要进行模块化分析,把这些东西具象化,把一个问题模块化,对需求有一个宏观的了解. 3 ...

  4. Django 系列博客(十四)

    Django 系列博客(十四) 前言 本篇博客介绍在 html 中使用 ajax 与后台进行数据交互. 什么是 ajax ajax(Asynchronous Javascript And XML)翻译 ...

  5. FPGA一个博客学习

    FPGA一个博客学习 http://bbs.ednchina.com/BLOG_PERSONALCAT_100185_2001619.HTM

  6. HelloDjango 第 09 篇:让博客支持 Markdown 语法和代码高亮

    作者:HelloGitHub-追梦人物 文中涉及的示例代码,已同步更新到 HelloGitHub-Team 仓库 为了让博客文章具有良好的排版,显示更加丰富的格式,我们使用 Markdown 语法来书 ...

  7. 做个开源博客学习Vite2 + Vue3 (四)实现博客功能

    我们再来看一下管理类的设计. Composition API,就是组合API的意思,那么是不是应该把js代码分离出来,做成独立的管理类的形式呢? 这样代码可以更整洁一些,主要是setup里面的代码就不 ...

  8. 【干货】利用MVC5+EF6搭建博客系统(四)(下)前后台布局实现、发布博客以及展示

    二.博客系统后台布局实现 2.1.这里所用的是MVC的布局页来实现的,后台主要分为三部分:导航.菜单.主要内容 代码实现: 这里把后台单独放在一个区域里面,所以我这里建立一个admin的区域 在布局页 ...

  9. python+selenium之悠悠博客学习笔记

    1 Python之自动化测试框架selenium学习 offical website 悠悠之selenium浅谈·博客园 悠悠软件测试系列 1.1 基础环境准备 1.1.1 python包下载工具的安 ...

随机推荐

  1. 笔记:1.css样式,最前边加 @charset "utf-8";是为什么2.js判断各种浏览器的方法

    表明CSS文件的页面编码为UTF-8..如果这个CSS的文件编码也是UTF-8的话..那么在浏览器中看到的CSS文件的页面中中文的注释或者中文字体就可以正确显示为中文,如果CSS的文件编码和页面不一致 ...

  2. eclipse配置struts.xml自动提示

    a)window – preferences – xml - xml catalog –> add  b)选择key type为URI c)key: http://struts.apache.o ...

  3. 使用list和tuple

    list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >>> ...

  4. ExtJs4.1实现数据缓存

    Ext.onReady(function () {             Ext.define("ProvinceCity", {                 extend: ...

  5. 【每天一个Linux命令】10. 用户账号的新建/修改/删除以及密码修改 useradd/usemod/userdel/passwd

    在 Linux 系统中,与用户管理有关的文件主要有如下几个:分别是/etc/passwd,/etc/shadow,/etc/gfoup,/etc/gshadow .它们分别与用户的账号,密码,用户组及 ...

  6. CSS构造颜色、背景与图像

    设定颜色 背景使用 图像使用 1.设定颜色 红色的几种合法定义;     #f00;     #ff0000;     Red;     Rgb(255,0,0);     Rgb(100%,0%,0 ...

  7. docker——Dockerfile创建镜像

    写在前面: 继续docker的学习,昨天用docker成功跑了tomcat,但是在centos中镜像跑的容器手动装jdk和tomcat,今天学习用Dockerfile创建镜像,并在上面搭建java环境 ...

  8. Java面试题集(51-70)

    Java程序员面试题集(51-70) 51.类ExampleA 继承Exception,类ExampleB 继承ExampleA. 有如下代码片断: try{ thrownew ExampleB(“b ...

  9. delete table 和 truncate table

    delete table 和 truncate table 使用delete语句删除数据的一般语法格式: delete [from] {table_name.view_name} [where< ...

  10. Codeforces Round #325 (Div. 2) B. Laurenty and Shop 前缀和

    B. Laurenty and Shop Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/586/p ...