CSS单位和值与样式设置技巧分享

一、单位和值 

  1.1 颜色值

  在网页中的颜色设置是非常重要,有字体颜色(color)、背景颜色(background-color)、边框颜色(border)等,设置颜色的方法也有很多种:

  1、英文命令颜色

  前面几个小节中经常用到的就是这种设置方法:

p{color:red;}
  2、RGB颜色

  这个与 photoshop 中的 RGB 颜色是一致的,由 R(red)、G(green)、B(blue) 三种颜色的比例来配色。

  p{color:rgb(133,45,200);}
  每一项的值可以是 0~255 之间的整数,也可以是 0%~100% 的百分数。如:

  p{color:rgb(20%,33%,25%);}
  3、十六进制颜色

  这种颜色设置方法是现在比较普遍使用的方法,其原理其实也是 RGB 设置,但是其每一项的值由 0-255 变成了十六进制 00-ff。

p{color:#00ffff;}

  配色表:

CSS单位和值与样式设置技巧分享
1.2 长度值

  长度单位总结一下,目前比较常用到px(像素)、em、% 百分比,要注意其实这三种单位都是相对单位。

  1、像素

  像素为什么是相对单位呢?因为像素指的是显示器上的小点(CSS规范中假设“90像素=1英寸”)。实际情况是浏览器会使用显示器的实际像素值有关,在目前大多数的设计者都倾向于使用像素(px)作为单位。

立即学习“前端免费学习笔记(深入)”;

  2、em

  就是本元素给定字体的 font-size 值,如果元素的 font-size 为 14px ,那么 1em = 14px;如果 font-size 为 18px,那么 1em = 18px。如下代码:

p{font-size:12px;text-indent:2em;}
  上面代码就是可以实现段落首行缩进 24px(也就是两个字体大小的距离)。

  下面注意一个特殊情况:

  但当给 font-size 设置单位为 em 时,此时计算的标准以 p 的父元素的 font-size 为基础。如下代码:

html:

以这个例子为例。

css:

p{font-size:14px}
span{font-size:0.8em;}
  结果 span 中的字体“例子”字体大小就为 11.2px(14 * 0.8 = 11.2px)。

  3、百分比

p{font-size:12px;line-height:130%}

  设置行高(行间距)为字体的130%(12 * 1.3 = 15.6px)。

二、样式设置技巧

  2.1 水平居中-行内元素

  我们在实际工作中常会遇到需要设置水平居中的场景,比如为了美观,文章的标题一般都是水平居中显示的。

  这里我们又得分两种情况:行内元素 还是 块状元素 ,块状元素里面又分为定宽块状元素,以及不定宽块状元素。今天我们先来了解一  下行内元素怎么进行水平居中?

  如果被设置元素为文本、图片等行内元素时,水平居中是通过给父元素设置 text-align:center 来实现的。(父元素和子元素:如下面的html代码中,p是“我想要在父容器中水平居中显示”这个文本的父元素。反之这个文本是p的子元素 )如下代码:

html代码:

  

我想要在父容器中水平居中显示。

css代码: .txtCenter{ text-align:center; }

 2.2 定宽块状居中

  当被设置元素为 块状元素 时用 text-align:center 就不起作用了,这时也分两种情况:定宽块状元素和不定宽块状元素。

  这一小节我们先来讲一讲定宽块状元素。(定宽块状元素:块状元素的宽度width为固定值。)

  满足定宽和块状两个条件的元素是可以通过设置“左右margin”值为“auto”来实现居中的。我们来看个例子就是设置 p 这个块状元素水平居中:

html代码:

  

我是定宽块状元素,哈哈,我要水平居中显示。

css代码: p{ border:1px solid red;/*为了显示居中效果明显为 p 设置了边框*/ width:200px;/*定宽*/ margin:20px auto;/* margin-left 与 margin-right 设置为 auto */ }

也可以写成:

margin-left:auto;
margin-right:auto;
注意:元素的“上下 margin” 是可以随意设置的。

 2.3 不定宽

  在实际工作中我们会遇到需要为“不定宽度的块状元素”设置居中,比如网页上的分页导航,因为分页的数量是不确定的,所以我们不能通过设置宽度来限制它的弹性。(不定宽块状元素:块状元素的宽度width不固定。)

  不定宽度的块状元素有三种方法居中(这三种方法目前使用的都很多):

加入 table 标签
设置 display: inline 方法:与第一种类似,显示类型设为 行内元素,进行不定宽元素的属性设置
设置 position:relative 和 left:50%:利用 相对定位 的方式,将元素向左偏移 50% ,即达到居中的目的
  这一小节我们来讲一下第一种方法:

  为什么选择方法一加入table标签? 是利用table标签的长度自适应性—即不定义其长度也不默认父元素body的长度(table其长度根据其内文本长度决定),因此可以看做一个定宽度块元素,然后再利用定宽度块状居中的margin的方法,使其水平居中。

  第一步:为需要设置的居中的元素外面加入一个 table 标签 ( 包括

、、 )。

  第二步:为这个 table 设置“左右 margin 居中”(这个和定宽块状元素的方法一样)。

  举例如下:

  html代码:

  • 我是第一行文本
  • 我是第二行文本
  • 我是第三行文本

css代码: table{ border:1px solid; margin:0 auto; }
 

除了上一节讲到的插入table标签,可以使不定宽块状元素水平居中之外,本节介绍第2种实现这种效果的方法,改变元素的display类型为行内元素,利用其属性直接设置。

第二种方法:改变块级元素的 display 为 inline 类型(设置为 行内元素 显示),然后使用 text-align:center 来实现居中效果。如下例子:

html代码:

css代码: .container{ text-align:center; } /* margin:0;padding:0(消除文本与p边框之间的间隙)*/ .container ul{ list-style:none; margin:0; padding:0; display:inline; } /* margin-right:8px(设置li文本之间的间隔)*/ .container li{ margin-right:8px; display:inline; }

这种方法相比第一种方法的优势是不用增加无语义标签,但也存在着一些问题:它将块状元素的 display 类型改为 inline,变成了行内元素,所以少了一些功能,比如设定长度值。

  除了前两节讲到的插入table标签,以及改变元素的display类型,可以使不定宽块状元素水平居中之外,本节介绍第3种实现这种效果的方法,设置浮动和相对定位来实现。

方法三:通过给父元素设置 float,然后给父元素设置 position:relative 和 left:50%,子元素设置 position:relative 和 left: -50% 来实现水平居中。

我们可以这样理解:假想ul层的父层(即下面例子中的p层)中间有条平分线将ul层的父层(p层)平均分为两份,ul层的css代码是将ul层的最左端与ul层的父层(p层)的平分线对齐;而li层的css代码则是将li层的平分线与ul层的最左端(也是p层的平分线)对齐,从而实现li层的居中。

代码如下:

css代码: .container{ float:left; position:relative; left:50% } .container ul{ list-style:none; margin:0; padding:0; position:relative; left:-50%; } .container li{float:left;display:inline;margin-right:8px;}

这三种方法使用得都非常广泛,各有优缺点,具体选用哪种方法,可以视具体情况而定。

以上就是CSS单位和值与样式设置技巧分享的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1607785.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月23日 21:08:27
下一篇 2025年12月23日 21:08:51

相关推荐

  • 分享纯CSS实现鼠标悬停显示图片效果的实例

    这里来给大家推荐一个纯css实现鼠标悬停显示图片效果的实例分享,以针对鼠标移到tr标签上来添加hover这种最简单的方式来演示,简单明了,需要的朋友可以参考下 最近在做一个网盘的项目,用到了鼠标移上去效果,这个效果可以用js来实现,今天主要分享一下,这个效果如何用纯css实现! 效果如下图: htm…

    2025年12月23日
    000
  • 浅谈css清除浮动clearfix和clear的用法介绍

    下面小编就为大家带来一篇浅谈css清除浮动(clearfix 和clear)的用法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 本文主要是讲解如何在 html 中使用 clearfix 和 clear,针对那些刚开始了解 css 的童鞋。关于 clearfix 和 …

    好文分享 2025年12月23日
    000
  • 详解CSS中的percentage百分比值使用方法

    一起来了解css中的percentage百分比值使用方法 百分比值是CSS中设计各种元素尺寸以及页面布局的基础手段,这里就带大家来彻底掌握CSS中的percentage百分比值使用,包括percentage转px的方法等,here we go~ 百分比旨在相对于父元素的相同属性的大小。如果用来设置字…

    2025年12月23日
    000
  • CSS中的选择器优先级顺序的详细介绍

    特殊性是什么 在对一个HTML元素应用CSS样式时,常常有很多种方法可以找到元素,比如: 这是一个段落 #container p { color:red } p p { color:green } p { color:yellow } 可见,如果要作用到一个HTML元素的方法有很多,远远不止这些。那…

    好文分享 2025年12月23日
    000
  • 在CSS中Box Model盒模型中的边距图文详解

    盒模型由以下css属性组成: 0.内容(content)1.padding 内边距2.border 边框3.margin 外边距下面有一个最常见的例子,虚线不属于盒模型,用于标识范围。 .box { width: 200px; height: 200px; background-color: gre…

    2025年12月23日
    000
  • 详解Less框架中将CSS强制打包到单个文件中的技巧

    在使用less预编译框架时我们总是希望能高效管理css文件的部署结构,这里我们就来看一个在less框架中将css强制打包到单个文件中的技巧,需要的朋友可以参考下 less 在import 其它less文件的时候会将其合并到单个文件中。但是当引入css 文件时,默认不会将css 合并进来 。使用inl…

    好文分享 2025年12月23日
    000
  • CSS的box-align属性控制子元素布局实例分析

    box-align 说明 box-align属性, 指定元素内子要素纵方向排列指定时使用。容器元素比子元素大很多的情况下,使用box-align属性,可以指定子元素的排序顺序,并且可以指定子元素如何表示。还有,纵方向排列一说,可以解释为元素内子元素的配置方向默认值为水平,使用此属性后垂直方向进行排列…

    2025年12月23日
    000
  • 详解CSS绘制三角形箭头图案技术解析

    最近我想修改一下这个网站,我想在上面放置一个提示框。这是很容易,但我想让提示框上有一个三角形的箭头。可是,一想到这需要使用图片,并且各种颜色,各种方向的箭头要准备无数种,这几乎是一种灾难。幸运的是,mootools的核心开发着darren waddell告诉了我一个非常棒的技术:用css绘制三角形箭…

    好文分享 2025年12月23日
    000
  • CSS实现商品图片点击放大效果的方法

    本文实例为大家分享了纯css实现图片点击放大带关闭按钮的图片特效代码,效果非常棒,供大家参考,具体内容如下 源码下载、演示 实现代码: CSS代码: .product { width:320px; height:150px; border:1px solid #ddd; margin:0 auto;…

    2025年12月23日
    000
  • 使用CSS的@supports标记来检测浏览器的兼容情况分析

    @supports可以用来检查浏览器是否支持某css属性,并且可以通过javascript进行控制,以下就来详细说明使用css的@supports标记来检测浏览器的兼容情况的方法 CSS @supports标记在CSS代码里跟@media查询语句的语法相似: @supports(prop:value…

    好文分享 2025年12月23日
    000
  • 详解CSS的overflow属性防止float撑开div的使用方法

    我们在使用float设定浮动元素的时候经常会遇到撑破p的情况,其中一种解决方法即是利用overflow: hidden,这里我们就来看一下使用css的overflow属性防止float撑开p的方法: 许多应征前端工程师的人,在面试时都会被问到这类float的问题。例如:p元素内的两个子元素p都flo…

    2025年12月23日
    000
  • CSS下拉菜单简单制作方法介绍

    本文实例为大家分享了css下拉菜单的具体实现代码,供大家参考,具体内容如下 下拉菜单实例 .dropdown { position: relative; display: inline-block; } .dropdown-content { display: none; position: abs…

    2025年12月23日
    000
  • CSS中的table-cell属性使用实例

    先让我们来研究下table,那些年曾经使用的table布局为何如此辉煌荡漾呢?她的特点有哪些呢?抛弃table的兼容性、seo、加载等与本文无关的内容不谈,只看属性,那么就两个特点: 1.同行等高。2.宽度自动调节。那么table-cell是不是具备这个特点呢?答案是yes,为什么呢?css中有一个…

    2025年12月23日 好文分享
    000
  • CSS的table-cell属性实现左图右文的排版方法示例介绍

    一些情况下使用table-cell比float来得更加简单有效,比如水平菜单的样式编写,这里我们则来看一下使用css的table-cell属性实现左图右文的排版方法详解: 对要素进行横向排列的时候,一般都会使用float, display:inline-block等方法。我们使用table-cell…

    2025年12月23日
    000
  • CSS实现隐藏和显示功能的代码

    废话不多说,直接给大家贴代码了 关键代码如下所示: .trans-fadeout{ -webkit-transition:all 1s linear; -moz-transition:all 1s linear; -ms-transition:all 1s linear; -o-transition…

    好文分享 2025年12月23日
    000
  • CSS的子元素选择器用法详细介绍

    基础 子元素选择器只能一级一级向下寻找,不能跨越  HTML代码: this is my web page. 立即学习“前端免费学习笔记(深入)”; CSS代码: p>strong { color: purple; } p>strong>i { font-size: 50px; }…

    2025年12月23日
    000
  • css实现三角的简单实例详解

    在很多页面制作中会设计到突出一个三角,下面给出一种兼容各种浏览器的设计方法: .corner-top{ width:0px; height:0px; font-size:0; border-width:20px; border-style:solid dashed dashed dashed; bo…

    好文分享 2025年12月23日
    000
  • 详细介绍CSS之margin知识点

    1.margin的百分比值普通元素的百分比maigin相对于容器元素的宽度(width) 进行计算的。 这里我们在图片外面设置一个宽高分别为800 * 600的容器。设置img{ margin: 10%; } 结果如下    结果margin值都是 800 * 10% = 80px; 所以这里都是相…

    2025年12月23日 好文分享
    000
  • CSS使用float属性设置浮动元素的方法介绍

    浮动的框可以向左或向右移动,直到它的外边缘碰到包含框或另一个浮动框的边框为止。 由于浮动框不在文档的普通流中,所以文档的普通流中的块表现得就像浮动框不存在一样。 float效果展示基本设置 在网页中正常添加3个p色块: HTML代码: 立即学习“前端免费学习笔记(深入)”; p1 p2 p3 简单设…

    2025年12月23日 好文分享
    000
  • CSS的clear属性清除浮动的用法详细介绍

    什么是css清除浮动?  网络上流行的说法是:在非IE浏览器(如Firefox)下,当容器的高度(height)为auto,且容器的内容中有浮动(float为left或right)的元素,在这种情况下,容器的高度不能自动伸长以适应内容的高度,使得内容溢出到容器外面而影响(甚至破坏)布局的现象。这个现…

    2025年12月23日
    000

发表回复

登录后才能评论
关注微信