css013 构建基于浮动的布局

基于浮动的布局时利用float属性是网页上的元素并排,并创建列

float有三个值:left 、right 、none

1、假设要把一张图片浮动到网页的左侧

.float-left{

float:eft;

}

假如要把一个装满内容的<div>浮动到一边,形成一个侧边栏

.sidebar{

float:left;

width:150px;

}

2、设计一个简单的两列布局需要的几个步骤

a、 把每列都包在一个带有ID或class属性的<div>标签里面

b、把侧边栏<div>浮动到左侧或者右侧

c、 给浮动的侧边栏设定一个宽度

宽度可以是一个固定的尺寸,也可以是基于浏览器窗口宽度的弹性设置,使用百分比。

d、     给正文添加一个margin-left

(要仔细弄明白了)

 

一、    用浮动进行布局

1、让所有的列都浮动让所有的列浮动时要注意每一列的宽度,列宽度总和应该小于总宽度

2、在浮动元素中浮动

3、在浮动元素中浮动

二、    克服浮动问题

1、清除浮动和保持浮动

a、 在<div>的底部添加一个清除元素

b、浮动外围元素:让浮动元素的<div>也浮动起来

c、 利用overflow:hidden; (如果容器中有绝对定位的元素,它们可能会显示不出来。例如:当一个下拉菜单中有另一个标签或者下拉菜单时,就会显示不出来)

d、   使用Mico Clear Fix

利用html分区元素,添加一个类,如:

<div class=”clear”>

在css中写:

.clear{

clear:both;

}

2、多列布局

三、    多列的布局

1、设置列项目:column-count

设置列列之间的间隔:column-gap

在列之间绘制一条直线:column-rule

如:给这个类定义一个名为:multicol的类,创建一个3列的布局,间隔为1em ,并添加一条黑色的虚线

. multicol{

column-count:3;

column-gap:1em;

column-rule:1px dotted black;

}

3、创建全网页高度的列

假设有个3列的设计,第一列为25%宽,第二列有50%,第三列有25%。你想让背景色为红白蓝。

<div class="wrapper">

<div class="sidebar1">hello everyone!</div>

<div class="main">i am the main content</div>

<div class="sidebar2">nice to meet you!</div>

</div>

添加一个线性渐变,让颜色站与列的宽度相匹配

.wrapper{

background-color: linear-gradient(left,

red:0%,

red:25%,

white:25%,

white:75%,

blue:75%,

blue:100%);

}

添加供应商版本的代码:

……

4、防止浮动下落

浮动下落(float drop)总是犹豫没有组否的空间容纳所有的列才造成的

5、用box-sizing防止浮动下落

box-sizing的三个值分别如下:

a、 content-box

b、  box-sizing:content-box

屏幕宽度为width属性值+padding值+border值

c、 padding-box

box-sizing:padding-box

屏幕宽度为width属性值+padding值

d、           border-box

box-sizing:border-box

屏幕宽度为width属性值+border值

css013 构建基于浮动的布局的更多相关文章

  1. ch8 基于浮动的布局(两列浮动布局、三列浮动布局)

    CSS布局技术的根本是3个基本概念:定位.浮动.外边距操纵. 只需要设置希望定位的元素的宽度,然后将它们向左或向右浮动.因为浮动的元素不再占据文档流中的任何空间,它们就不再对包围他们的块框产生任何影响 ...

  2. CSS3-基于浮动的布局,响应式WEB设计,定位网页上的元素,设计打印页面的css技术

    基于浮动的布局: 1.除非图片设置了宽度,否则始终应该要对浮动的图片设置一个宽度,这样可以让浏览器给其他内容腾出环绕的空间 2.当侧边栏的高度与主内容区的高度不一致的时候,可以用个margin进行调整 ...

  3. 【jQuery插件】用jQuery Masonry快速构建一个pinterest网站布局(转)

    [jQuery插件]用jQuery Masonry快速构建一个pinterest网站布局 时间:2011年03月21日作者:愚人码头查看次数:29,744 views评论次数:25条评论 前段时间领导 ...

  4. 使用PowerApps快速构建基于主题的轻业务应用 —— 进阶篇

    作者:陈希章 发表于 2017年12月14日 在上一篇 使用PowerApps快速构建基于主题的轻业务应用 -- 入门篇 中,我用了三个实际的例子演示了如何快速开始使用PowerApps构建轻业务应用 ...

  5. 构建基于WCF Restful Service的服务

    前言 传统的Asmx服务,由于遵循SOAP协议,所以返回内容以xml方式组织.并且客户端需要添加服务端引用才能使用(虽然看到网络上已经提供了这方面的Dynamic Proxy,但是没有这种方式简便), ...

  6. maven-bundle-plugin插件, 用maven构建基于osgi的web应用

    maven-bundle-plugin 2.4.0以下版本导出META-INF中的内容到MANIFEST.MF中 今天终于把maven-bundle-plugin不能导出META-INF中的内容到Ex ...

  7. 正则表达式引擎的构建——基于编译原理DFA(龙书第三章)——3 计算4个函数

    整个引擎代码在github上,地址为:https://github.com/sun2043430/RegularExpression_Engine.git nullable, firstpos, la ...

  8. 构建基于Javascript的移动web CMS——模板

    在上一篇<构建基于Javascript的移动CMS--Hello,World>讲述了墨颀 CMS的大概组成,并进行了一个简单的演示样例,即Hello,World.这一次,我们将把CMS简单 ...

  9. Net 项目构建基于Jenkins + Github + Mono 的持续集成环境

    Net 项目构建基于Jenkins + Github + Mono 的持续集成环境 阅读目录 1 安装 2 配置 3 测试 在Redhat enterprise 6.5 的服务器上,为在gutub 上 ...

随机推荐

  1. MinHash算法

    MinHash是用于快速检测两个集合的相似性的方法.改方法由Andrei Broder(1997)发明,并最初用于搜索引擎AltaVista中来检测重复的网页的算法.它同样可以用于推荐系统和大规模文档 ...

  2. 【Magenta 项目初探】手把手教你用Tensorflow神经网络创造音乐

    原文链接:http://www.cnblogs.com/learn-to-rock/p/5677458.html 偶然在网上看到了一个让我很感兴趣的项目 Magenta,用Tensorflow让神经网 ...

  3. ElasticSearch入门系列(六)分布式操作

    一.路由文档到分片 当你索引一个文档的时候,他被存储在单独一个主分片上.Elasticsearch根据一个算法来找到所在分片上. shard=hash(routing)%number_of_prima ...

  4. linux 配置 crontab

    linux中的crontab是定时用的,下面的cron服务就是定时器的意思 crontab -l 列举所有的cron服务 crontab -e 修改cron服务 crontab -r 删除cron服务 ...

  5. 使用D3绘制图表(6)--竖直柱状图表

    竖直柱状图的绘制是在水平柱状图的基础上修改的. 1.html代码 <!DOCTYPE html> <html> <head> <meta charset=&q ...

  6. judge remote file exist

    # -*- coding:utf-8 -*- import paramiko,os,sys,time print ''' *****判断远端服务器上的某个文件是否存在***** ''' ip = ra ...

  7. react.js 表单验证-登录框

    import React,{ Component } from 'react'; import style from 'cms.css'; ​ /** * 路由路径 登录成功后页面跳转到index * ...

  8. .Net Core 1.0.0正式版安装及示例教程

    使用VS Code 从零开始开发调试.NET Core 1.0 RTM. .NET Core 是一个开源的.跨平台的 .NET 实现. VS Code 全称是 Visual Studio Code,V ...

  9. HTML5前端(移动端网站)性能优化指南

    HTML5是一种最新发布网页构架的普遍模型,是构建对程序.对用户都更有价值的数据驱动的Web的前端技术框架,它的价值在于融合CSS/javaScript/flash等众多前端开发技术,更多的体现在对交 ...

  10. Leetcode 86. Unique Binary Search Trees

    本题利用BST的特性来用DP求解.由于BST的性质,所以root左子树的node全部<root.而右子树的node全部>root. 左子树 = [1, j-1], root = j, 右子 ...