<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style> div{ width: 100px; height: 100px; background-color: red; display: inline-block; *display:inline; *zoom:1; } </style> <…
在IE6.IE7中实现块元素的inline-block效果有以下两种方法: 1先使用display:inline-block属性触发layout,然后再定义display:inline让块元素呈现内联对象(两个display要先后放在两个CSS声明中才有效果,这是IE的一个经典BUG). 2直接将块元素设置为display:inline呈现为内联对象,然后触发layout(如zoom:1).…
在前端页面编辑中,常常用于块元素横排列时,我们会用到浮动或者dispaly:inline-block: 浮动虽然好用,效果明显,但是会存在潜在BUG,(暂且不论):那么display:inline-block也能使其横排,但是有两个很明显的问题: 1.横排元素之前没有设置,margin却多出了间距: 2.横排元素不能在同一水平线上: 看图: 处理方式:只需要在横排元素的父级设置font-size:0;即可 原因: 代码编译时,标签间有折行或空格,都相当于字符空格,这种字符,默认有font-siz…
问题描述: ie6下,空标签块元素height定义失效,表现为除设置的height值外还会显示N像素额外的高度. 实际运用中,若标签为空且定义了小于14px的高度,再加入一背景图的话,会发现该元素高度同其它浏览器不同,即定义的高度始终会显示成height:14px . 问题代码如下: .demo{width:200px;height:6px; background:#f00 url(images/demo.jpg) no-repeat center bottom;} <div class="…
摘抄自原文链接 简单来说display:inline-block,就是可以让行内元素或块元素变成行内块元素,可以不float就能像块级元素一样设置宽高,又能像行内元素一样轻松居中. 在ie6中给div设置display:inline-block属性就会出bug.div依然是块元素.但是给span设置该属性就没问题(span本来就是行元素么?挖个坑后续再补充吧.) 我觉得这个方法比较好理解.只摘抄这一个. 方法1:直接让块元素设置为内联对象呈递(设置属性 display:inline),然后触发块…
使用背景 在实际的工作中,我们有的时候会把块元素设置为inline-block,这样做的目的有2个,一是块元素能够排列到一行,二是块元素就形成包裹性,能够自适应content area,而不必设置宽和高(依实际情况而定),在现在浏览器中没有什么问题,但是IE6.7下,当把block元素设置成inline-block之后,还是在分别的两行,下面我们看一下现象. 代码以及IE6.7下的表现 CSS: body { padding: 10px; } .block_to_inlineblock, .in…
float: 定义:按照一个指定的方向移动,遇到父级的边界或者相邻的浮动元素就会停下来(不完全脱离文档流) 值: left.right.none 特点: 1.浮动的块元素可以在一行显示,宽度是被内容撑开的2.浮动的行内元素支持宽高3.非浮动元素里的内容会留出前面浮动元素的位置(盒模型的位置)4.浮动的子元素不会撑开其父元素的高度,所以换行.空格也不会影响父元素(要撑开父元素的话需要在父元素最后增加一个清楚左右浮动的子元素clear: both; after伪类清除浮动) .clearfix:af…
在IE6.IE7中不识别display:inline-block属性,但使用inline-block属性在IE下会触发layout,从而使内联元素拥有了display:inline-block属性的表症.从上面的分析也不难理解为什么IE6.IE7下对块元素设置 display:inline-block属性无法实现inline-block的效果.这时块元素仅仅是被inline-block触发了 layout,而它本就是行布局,所以触发后,块元素依然是行布局.IE8识别display:inline-…
块元素 块元素,也可以称为行元素,布局中常用的标签如:div.p.ul.li.h1~h6.dl.dt.dd等等都是块元素,它在布局中的行为:1.支持全部的样式.2.如果没有设置宽度,默认的宽度为父级宽度100%.3.盒子占据一行.即使设置了宽度.内联元素 内联元素,也可以称为行内元素,布局中常用的标签如:a.span.em.b.strong.i等等都是内联元素,它们在布局中的行为:1.支持部分样式(不支持宽.高.margin 上下.padding 上下).2.宽高由内容决定.3.盒子并在一行.4…
设置display:inline-block;后的元素 就是一个格式化为行内元素的块容器( Block container ):通俗讲就是:将对象呈递为内联对象,但是对象的内容作为块对象呈递.旁边的内联对象会被呈递在同一行内,允许空格. 支持的浏览器:目前有 safri 和 chorme 及 ie8+ 和 firefox3.6+:ie6和ie7不支持该属性: 解决办法: IE6/IE7的inline-block属性只对原生默认的内联元素(span, a, em......)有效,对于块级元素(d…
display:inline-block: 作用:将对象呈现为inline对象,但是对象的内容作为block对象呈现.之后的内联对象会被排列在同一行内.比如我们可以给一个link(a元素)inline-block属性值,使其既具有block的宽度高度特性又具有inline的同行特性. 举例:给<span class="a"></span>一个background:url("...jpg")背景图片,由于span标签里面并没有内容,结果背景图片…
先写出代码 核心css代码: .sample0{display: inline-block;height: 40px;width: 40px;color: #ffffff;background-color: red; text-align: center;font-size: 26px;} .sample1{display: inline-block;height: 40px;width: 40px;color: #ffffff;background-color: orange;text-ali…
追加以下代码:*display:inline.*zoom:1 ;} 块元素变为内联块, IE67不兼容:内联元素变为内联块,所有浏览器都支持 发现问题:当然,变为内联块后,有一个特性就是如果元素换行,在页面上元素之间就会有空隙的,空隙大小为一个空格的像素大小.…
IE6/7是不支持display:inline-block属性,只是让其表现的跟inline-block一样,尤其对于inline水平的元素,其表现度可以用perfect一词来形容了. 对于IE8+以及现代浏览器,直接使用:{display:inline-block;}就可以了,支持任意水平的元素. 对于不支持的IE6/7浏览器该怎么办呢? 如果是inline水平的元素(如a标签,span标签之类)跟上面一样,直接:{display:inline-block;}就可以了,对于这两个浏览器,其功效…
行内元素:span  ,a,  ,strong , em,  del,  ins.特点:在一行上显示:不能直接设置宽高:元素的宽和高就是内容撑开的宽高. 块元素:div,h1-h6,p,ul,li.特点:独占一行:可以设置宽高:注释:嵌套(包含)下,子块元素宽度(没有定义情况下)和父块元素宽度默认一致. 行内块元素(内联元素):input  img.特点:在一行上显示,也可设置其宽高. <!DOCTYPE html> <html> <head> <meta cha…
盒子模型的实际尺寸 盒子的width和height设置的是盒子内容的宽和高,不是盒子本身的宽和高,盒子的真实尺寸计算公式如下: 盒子宽度 = width + padding左右 + border左右 盒子高度 = height + padding上下 + border上下 margin相关技巧 1.设置元素水平居中: margin:x auto;2.margin负值让元素位移及边框合并 外边距合并 外边距合并指的是,当两个垂直外边距相遇时,它们将形成一个外边距.合并后的外边距的高度等于两个发生合…
元素显示模式 前言 了解元素的显示模式可以更好的让我们布局页面.了解显示模式需要学习以下三个方面 什么是元素的显示模式 元素显示模式的分类 元素显示模式的转换 什么是元素显示模式 元素显示模式就是元素(标签)以什么方式进行显示,比如<div>自己占一行,比如一行可以放多个<span>. HTML 元素一般分为块元素和行内元素两种类型. 网页的标签非常多,在不同地方会用到不同类型的标签,了解他们的特点可以更好的布局我们的网页. 块元素 常见的块元素有<h1>~<h6…
块: 1.独占一行 2.支持所有的样式 3.不设置宽度的时候,宽度撑满整行 常用的快标签有: div,section,header,nav,footer,article,aside,ul,ol,li,dl,dt,dd,h1~h6,p, 内嵌: 1.多个内嵌元素可以在一行显示 2.不支持宽高,对上下的margin 3.宽度由内容撑开 4.代码换行会被解析 常用内嵌标签有 : span,strong, a , em inline-block : 1.多个设置为inline-block的块元素可以在一…
块元素.内联元素.内联块元素: 元素就是标签,布局中常用的有三种标签,块元素.内联元素.内联块元素,了解这三种元素的特性,才能熟练的进行页面布局. 块元素: 块元素,也可以称为行元素,布局中常用的标签,如:div.p.ul.li.h1-h6等等都是块元素,它在布局中的行为: (1)支持全部的样式 (2)如果没有设置宽度,默认的宽度为父级宽度100% (3)盒子占据一行.即使设置了宽度 代码: <!DOCTYPE html> <html lang="en"> &l…
1).块状元素:(div,p,form,ul,ol,li) ,独占一行,默认情况width为100% 2).行内块状元素:(span,img,a),不会独占一行,相邻的元素一直排在同一行,排满了才会换行,不受..top..bottom的影响 3).display:行内,块状元素设置 display:block; ----将该元素设置为块状元素 display:inline-block;----将该元素设置为行内块状元素…
实现span设置宽度(行内元素本来不支持调宽度高度这些样式)(变成行内块元素:display:inline-block;) 一.总结 1.将span从行内元素变成行内快元素就可以调了: 设置样式的时候加上 display:inline-block; 即可: 二.CSS中如何把Span标签设置为固定宽度 本文总结CSS中SPAN标签的固定宽度设置问题,一般在日志文章标题+日期展示时经常遇到,所以就顺便把SPAN几种组合情况一起汇总一下.包括独立行固定宽度.同行固定宽度和同行居中固定宽度.关于SPA…
ie6,ie7中,对块级元素设置display:inline-block,无效. 所以要先设置为inline,再触发haslayout .div1{ /*重点代码开始*/ display: inline-block;//针对一般浏览器 *display: inline;//针对ie6.ie7 *zoom:1;//针对ie6.ie7 /*重点代码结束*/ background: pink; width: 200px; height: 150px; }…
<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPor…
2.display:inline-block作用? 使用display:inline-block属性,可以使行内元素或块元素能够变成行内块元素,简单直白点讲就是不加float属性就可以定义自身的宽.高,同时又能使该元素轻松在父元素居中显示! 3.什么时候会用到display:inline-block? 在网站布局中,很多时候,子元素中使用行内元素如span或块元素li标签且标签个数不定,而我们又想让这一块不管个数有多少个(子元素的总体宽度不定),始终都能居中显示!这个时候display:inli…
IE6/IE7下对display:inline-block的支持性不好. 1.inline元素的display属性设置为inline-block时,所有的浏览器都支持: 2.block元素的display属性设置为inline-block时,IE6/IE7浏览器是不支持的:       对象呈递为内联对象,但是对象的内容作为块对象呈递.旁边的内联对象会被呈递在同一行,允许空格.(准确地说,应用此特性的元素现为内联对象,周围元素保持在同一行,但可以设置宽度和高度等块元素的属性)      IE中对…
IE6/IE7下对display:inline-block的支持性不好. 1.inline元素的display属性设置为inline-block时,所有的浏览器都支持: 2.block元素的display属性设置为inline-block时,IE6/IE7浏览器是不支持的:       对象呈递为内联对象,但是对象的内容作为块对象呈递.旁边的内联对象会被呈递在同一行,允许空格.(准确地说,应用此特性的元素现为内联对象,周围元素保持在同一行,但可以设置宽度和高度等块元素的属性)      IE中对…
display: inline-block;在IE6与IE7中存在bug. 1.inline元素的display属性设置为inline-block时,所有的浏览器都支持: 2.block元素的display属性设置为inline-block时,IE6/IE7浏览器是不支持的:       IE中对内联元素使用display:inline-block,IE是不识别的,但使用display:inline-block在IE下会触发layout,从而使内联元素拥有了display:inline-bloc…
1.inline元素的display属性设置为inline-block时,所有的浏览器都支持: 2.block元素的display属性设置为inline-block时,IE6/IE7浏览器是不支持的: IE6下块元素如何实现display:inline-block的效果? 有两种方法: 1. 先使用display:inline-block属性触发块元素,然后再定义display:inline,让块元素呈递为内联对象(两个display 要先后放在两个CSS声明中才有效果,这是IE的一个经典bug…
position属性:position属性指出一个元素的定位方法.有4种可能值:static, relative, absolute or fixed: static:默认值,元素按照在文档流中出现的顺序渲染 absolute:绝对定位,元素相对于它的第一个被定位的祖先元素(非static)来进行定位 fixed:元素相对于浏览器window进行定位 relative:元素相对与它的正常位置进行定位,因此"left:20"就表示在元素正常位置的基础上,左移20像素的距离. float属…
问题:每1个带display:inline-block;属性的链接 a 水平.垂直方向都带有一定的空白 关键在于父元素定义font-size:0 去掉行内块元素水平方向空白:子元素定义vertical-align 属性去掉行内块元素垂直方向空白!如果标签a内加上任意文字,则display:inline-block元素不会生成垂直方向有空白!…