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. leetcode@ [36/37] Valid Sudoku / Sudoku Solver

    https://leetcode.com/problems/valid-sudoku/ Determine if a Sudoku is valid, according to: Sudoku Puz ...

  2. linux中ctime,mtime,atime的区别

    st_atime Time when file data was last accessed. Changed by  the            following   functions:    ...

  3. iOS语音播放之切换听筒和扬声器的方法解决方案

    关于流媒体播放的相关知识可以加本人QQ:564702640 一起来讨论 [[UIDevice currentDevice] setProximityMonitoringEnabled:YES]; // ...

  4. Shell 脚本学习资料搜集

    Shell文档 ChinaUnix上大神“網中人”总结的Shell十三问,强烈推荐,这本书讲得比较精炼,而且都是一些Shell学习中容易把握不住的一些细节难点.每一问都写得非常精彩.ChinaUnix ...

  5. jQuery plugin : jqTransform

    Usage 1- Add javascript inclusion in the header section of your web page //required <script type= ...

  6. jquery如何自定义插件(扩展实例/静态方法)

    1.jquery插件的种类: 1).封装对象方法的插件(相当于实例方法) (使用 $.fn.extend({"方法名":function(参数){//方法体} }) ) 2).封装 ...

  7. Datatable的Select()方法简介

    DataTable是我们在进行开发时经常用到的一个类,并且经常需要对DataTable中的数据进行筛选等操作,下面就介绍一下Datatable中经常用到的一个方法——Select,微软提供了四个函数的 ...

  8. 去ECSHOP版权,去官方后门

    ECShop是一款B2C独立网店系统,适合企业及个人快速构建个性化网上商店.系统开源但不免费,是基于PHP语言及MYSQL数据库构架开发的跨平台开源程序.目前最新版本为2.7.3 0708版.1.首先 ...

  9. Qt 经典出错信息之”Basic XLib functionality test failed!”(Z..z..)

    此完整出错信息是在./configure阶段 Basic XLib functionality test failed! You might need to modify the include an ...

  10. jeasyUI属性列表

    属性分为CSS片段和JS片段. CSS类定义:1.div easyui-window        生成一个window窗口样式.      属性如下:                   1)mod ...