CSS-2

CSS2DRenderer的使用 具体参照https://github.com/mrdoob/three.js/blob/master/examples/css2d_label.html; CSS2DRenderer的使用 import { CSS2DObject,CSS2DRenderer } from ‘three/examples/jsm/renderers/CSS2DRenderer’; const { position, zIndex } = data.props; const html = this.getHtmlDom(dat 阅读详情

结构伪类选择器

声明

本文以查找p标签进行举例子

作用

根据元素的结构关系"查找"元素

查找第一个

p:first-child{
	background-color:red;
}
查找第一个 p 标签元素

找最后一个

p:last-child{
	background-color:green;
}
查找最后一个 p 标签元素

查找某一个

p:nth-child(666){
	background-color:blue;
}
查找第 666 个 p 标签元素

查找偶数个

/* n从0开始 */
p:nth-child(2n){
	background-color:blue;
}
查找 "偶数" 个 p 标签元素

查找奇数个

/* n从0开始 */
p:nth-child(2n+1){
	background-color:blue;
}
查找 "奇数" 个 p 标签元素

查找某倍数

/* 找到5的倍数的 p 标签,n从0开始 */
p:nth-child(5n){
	background-color:blue;
}
查找 " ? 倍数" 的所有 p 标签元素

查找某个之后的

/* 找到第5个元素之后的 p 标签 */
p:nth-child(5+n){
	background-color:blue;
}
查找 "第 ? 个以后"的 p 标签元素

查找某个之前的

/* 找到第5个元素之前的 p 标签 */
p:nth-child(5-n){
	background-color:blue;
}
查找 "第 ? 个之前"的 p 标签元素

伪元素选择器

  • 注意:必须设置 “content” 属性,用来设置伪元素的内容,如果没有内容,则引号留空即可
  • 伪元素默认是 “行内” 显示模式
  • 权重和标签选择器相同
    div {
        width: 300px;
        height: 300px;
        background-color: pink;
    }

    div::before{
        content:"老鼠";
        w100
    }

    div::after{
        content:"大米";
    }

    <div>爱</div>

最终显示结果为:"粉红色"的框里面,写着"老师爱大米"

盒子模型

重要组成部分

  • 内容区域:width & height
  • 内边距:padding(出现在内容与盒子边缘之间)
  • 边框线:border
  • 外边距:margin(出现在盒子外面)
div{
    width: 200px;
    height: 200px;
    background-color: pink;

    /* 内容与盒子边缘之间 */
    padding: 20px;
    
    /* 盒子边框 */
    border: 1px solid #000;

    /* 出现在盒子外面,拉开两个盒子之间的间距 */
    margin: 50px;
}

边框线

实线

border: 1px solid #000;

虚线

border: 2px dashed #000;

点线

border: 3px dotted #000;

单方向框线

border-top: 	1px solid #000;  	/* 上边框线 */
border-right: 	1px solid #000;  	/* 上边框线 */
border-bottom: 	1px solid #000;  	/* 上边框线 */
border-left: 	1px solid #000;  	/* 上边框线 */

内边距

单方向

padding-top:	20px;
padding-right:	20px;
padding-bottom:	20px;
padding-left:	20px;

多值写法

padding: 10px 20px 30px 40px;	/* 上  右  下  左*/
padding: 10px 40px 80px;		/* 上   左右  下 */
padding: 10px 80px;				/*  上下  左右  */

记忆方法:从"上"开始顺时针转一圈,如果当前方向没有数值,取值跟对面一样(对面的意思是:下对上,左对右)

尺寸计算

  • 默认情况下:盒子尺寸 = 内容尺寸 + 内边距尺寸 + border尺寸
  • 因此,在这种情况下,加 padding 和 border 会撑大盒子
div{
    width: 200px;
    height: 200px;
    background-color: pink;
    
    padding: 30px;
    border: 3px solid #000;
    
    /* 内减模式:不需要手动做减法,加 padding 和 border 也不会撑大盒子了 */
    box-sizing: border-box;
}

外边距

一、外边距的"单方向"控制,以及多值写法,都是和 padding 一样的
二、外边距不会撑大盒子

举例:
a.外边距单方向控制:
    margin-top: 20px;
    margin-right: 20px;
    margin-bottom: 20px;
    margin-left: 20px;
    
b.多值写法:
    margin: 10px 20px 30px 40px;	/* 上  右  下  左*/
    margin: 10px 40px 80px;			/* 上   左右  下 */
    margin: 10px 80px;				/*  上下  左右  */
记忆方法:从"上"开始顺时针转一圈,如果当前方向没有数值,取值跟对面一样(对面的意思是:下对上,左对右)

版心居中

/* 外边距的应用举例:版心居中 */

div{
    width: 75%;
    height: 200px;
    background-color: pink;
    /* ------------------------ */
    box-sizing: border-box;
    /* ------------------------ */
    padding: 20px;
    border: 1px solid #000;

    /* 网页"版心居中"效果:margin: 0 auto;  */
    /* "版心居中"效果的前提:有 width 属性 */
    margin: 0 auto;
}

圆角效果

圆角知识点

div {
    width: 200px;
    height: 200px;
    background-color: pink;
    
    /* -------圆角效果------- */
    border-radius: 20px;	/* 20px指的是圆的半径 */
}
border-radius: 20px;				/* 四个角都是一样 */
border-radius: 20px 30px;			/* 左上+右下       右上+左下 */
border-radius: 10px 20px 30px;		/* 左上   右上+左下   右下 */
border-radius: 10px 20px 30px 40px;  /* 左上   右上   右下   左下 */

记忆方法:从左上角顺时针开始赋值,没有取值的角与对角取值相同

正圆形状

应用场景:头像
实现原理:给正方形盒子设置圆角属性值为"50%"

    img {
        width: 200px;
        height: 200px;
        /*  */
        border-radius: 50%;
    }

胶囊形状

应用场景:按钮
实现原理:给长方形盒子设置圆角属性值为"盒子高度的一半"

    div {
        width: 200px;
        height: 80px;
        background-color: orange;
        /* ------------ */
        border-radius: 40px;
    }

阴影效果

属性名:box-shadow
属性值:X轴偏移量 Y轴偏移量 模糊半径 扩散半径 颜色 内外阴影
注意事项:
	1. X轴偏移量 Y轴偏移量 必须书写
	2. 默认是外阴影,内阴影需要添加 inset (不常用)

    div {
        width: 200px;
        height: 80px;
        background-color: orange;
        margin: 0 auto;
        /* ------------ */
        
        box-shadow: 2px 5px 10px 1px rgba(0, 0, 0, 0.5);  默认是外阴影!
        
        /* box-shadow: 2px 5px 10px 1px rgba(0, 0, 0, 0.5) inset; */  内阴影不常用!
    }

元素溢出

作用:控制溢出元素的内容的显示方式

div {
    width: 200px;
    height: 200px;
    background-color: pink;

    overflow: hidden;   /* 溢出的内容,隐藏起来 */
    overflow: scroll;   /* 溢出的内容,通过滚动条显示,如果不溢出,也显示滚动条 */
    overflow: auto;   /* 溢出的内容,通过滚动条显示,如果不溢出,就不显示滚动条 */
}

外边距问题

吞并现象

场景:垂直排列的兄弟元素,上下 margin 会相加吗?
现象:上下两个 margin 不会相加,两个 margin 中的较大值生效
结论:因此,在写 margin 时候,如果遇到了"垂直排列的兄弟元素",设置其中一个 margin 即可

塌陷问题

场景:父子级的标签,子级添加"上外边距(margin-top)"会产生塌陷问题
现象:导致父级一起向下移动

解决方法:
	1. 直接取消子级的 margon-top,使用父级的 padding					(推荐)
	2. 不取消子级的 margon-top,但是父级必须设置 overflow: hidden;	    (推荐)
	3. 不取消子级的 margon-top,但是父级必须设置 border-top;

行内元素问题

场景:行内元素添加 margin 和 padding,无法改变元素垂直位置
解决办法:给行内元素添加 line-height 可以改变垂直位置
span {
	margin: 50px;
	padding: 20px;
	
	/* 添加下面一行代码,直接解决问题 */
	line-height: 100px;
}

清除默认样式

/* 常用的"清除默认样式"的方法 */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;  /* 此句子的作用是,防止盒子被撑大,可根据实际情况,选择加与不加*/
}

/* 去除列表的项目符号 */
li {
	list-style: none;
}

/* 清除 a 标签的下划线 */
a {
    text-decoration: none;
}

浮动

作用:让"块元素"水平排列
特点:顶端对齐,具备"行内块"显示模式的特点

属性名:float
属性值:
	1. left		左对齐
	2. right	右对齐

代码演示:
.one {
    width: 100px;
    height: 100px;
    background-color: brown;

    float: left;

}

.two {
    width: 200px;
    height: 200px;
    background-color: orange;

    float: left;
}

清除浮动带来的影响

浮动带来的影响:
	父级里面的子级元素设置为浮动,如果此时父级元素没有高度,子级无法撑开父级元素的高度,可能会导致页面布局错乱!

方法一

额外标签法(了解)

  • 在父级元素内容的最后添加一个块级元素,设置CSS属性"clear: both"
.clearfix {
    clear: both;
 }
 
<div class="clearfix"></div>

方法二

单伪元素法(方法二与方法一的原理是相同的)

  • 在父级标签中,添加 class=“clearfix” 即可
.clearfix::after {
	content: "";
	display: block;
	clear: both;
}

方法三

双伪元素法【推荐】

  • 在父级标签中,添加 class=“clearfix” 即可
.clearfix::before,
.clearfix::after {
	content: "";
	display: table;
}

.clearfix::after {
	clear: both;
}

补充说明:

  1. before 是用来解决"外边距塌陷问题"
  2. after 是用来清除浮动带来的影响

方法四

overflow 方法

  • 父级元素添加 CSS 属性 “overflow: hidden”

Flex 布局

详细研究

教程网址:https://juejin.cn/post/6984365925168316447

认识 Flex 布局

Flex 布局也叫弹性布局,是浏览器提倡的布局模型,非常适合结构化布局,提供了强大的空间分布和对齐能力。 Flex 模型不会产生浮动布局中脱标的现,布局网页更简单、更灵活。

设置方式:给父级元素设置 display: flex,子元素可以自动挤压或拉伸
组成部分

  • 弹性容器(设置 display: flex 的父级元素)
  • 弹性盒子(弹性容器里面的子级盒子)
  • 主轴:默认在水平方向
  • 侧轴/交叉轴:默认在垂直方向

主轴对齐方式

属性名:justify-content

属性值效果
flex-start默认值,弹性盒子从起点开始依次排列
flex-end弹性盒子从终点开始依次排列
center弹性盒子沿主轴居中排列
space-between弹性盒子沿主轴均匀排列,空白间距均分在弹性盒子之间
space-around弹性盒子沿主轴均匀排列,空白间距均分在弹性盒子两侧
space-evenly弹性盒子沿主轴均匀排列,弹性盒子与容器之间间距相等

侧轴对齐方式

属性名:

  • align-items:当前弹性容器内所有弹性盒子的侧轴对齐方式(给弹性容器设置)

  • aligh-self:单独控制某个弹性盒子的侧轴对齐方式(给弹性容器设置)

属性值效果
stretch弹性盒子沿着侧轴线被拉伸至铺满容器(弹性盒子没有设置侧轴方向尺寸则默认拉伸)
center弹性盒子沿侧轴居中排列
flex-start弹性盒子从起点开始依次排列
flex-end弹性盒子从终点开始依次排列
.box {
	display: flex;
	align-items: center;  /* 所有的盒子沿着侧轴居中 */
}

.box div:nth-child(2) {
	align-self: center;  /* 某个盒子沿着侧轴居中 */
}

修改主轴方向

  • 将主轴的方向,由原来的水平修改为垂直;侧轴自动变换到水平方向
.box {
    display: flex;
    /* ------------ */
    flex-direction: column;  /* 修改主轴方向 */
}

img {
    width: 150px;
    height: 32px;
}

<div class="box">
	<img src="./images/img0" alt="">
	<span>媒体</span>
</div>

弹性伸缩比

作用:控制弹性盒子的主轴方向的尺寸

属性名:flex
属性值:整数数字,表示占用父级剩余尺寸的份数

flex: 1;  /* 表示占用父级剩余空间的一份 */

弹性盒子换行

弹性盒子可以自动挤压或压缩,默认情况下,所有弹性盒子都在一行显示

属性名:flex-wrap
属性值:
	wrap:		换行
	nowrap:		不换行(默认)

行对齐方式

属性名:align-content

属性值效果
flex-start默认值,弹性盒子从起点开始依次排列
flex-end弹性盒子从终点开始依次排列
center弹性盒子沿主轴居中排列
space-between弹性盒子沿主轴均匀排列,空白间距均分在弹性盒子之间
space-around弹性盒子沿主轴均匀排列,空白间距均分在弹性盒子两侧
space-evenly弹性盒子沿主轴均匀排列,弹性盒子与容器之间间距相等
Vue2 引入 Tailwind CSS 完整指南 本文详细介绍了在Vue2项目中集成TailwindCSS的完整流程,包括安装配置步骤、基础使用方法和常见问题解决方案。主要内容:1. 安装TailwindCSS及相关依赖,创建配置文件和PostCSS配置;2. 在CSS文件中引入Tailwind指令并正确配置内容扫描路径;3. 展示布局、间距、颜色、字体和边框等常用类的使用示例;4. 讲解响应式设计和状态变体的应用技巧;5. 提供Vue组件中使用Tailwind的最佳实践。文章还涵盖了常见问题处理方法和生产环境优化建议,帮助开发者高效构建现代化UI界面。 阅读详情

相关推荐

CSS2DRenderer—HTML元素作为模型标签

threejs扩展库CSS2渲染器,通过CSS2渲染器不需要自己再进行坐标计算变换,该模块已经封装,简而言之就是通过CSS2渲染器库很容易实现把HTML元素作为模型的标签。

OYlan_的博客 722

css1 css2 css3 区别

css1 css2 css3 区别        CSS1提供有关字体、颜色、位置和文本属性的基本信息,该版本已经得到了目前解析HTML和XML的浏览器的广泛支持。        但自从CSS1的版本之后,又在1998年5月发布了CSS2版本,样式单得到了更多的充实。        CSS2.0提供给我们了一个机制,让程序员开发时可以不考虑显示和界面就可以制作表单和界面,显示问题可由美工或是程序员...

damon940111的博客 7915

十五、CSS3DObject和CSS2DObject的区别

在3d场景中我们会遇到很多标签,主要分为三种,css3dobject、css2dobject、css3dsprite三种,今天主要说说css3dobject和css2dobject的相似点和区别。

张先森的博客 1198

css2样式

对于现代开发者,深入理解 CSS2 的核心概念(尤其是盒模型、定位、浮动、选择器特异性)至关重要,这是学习更高级 CSS3 特性的基础。CSS2(Cascading Style Sheets Level 2)是万维网联盟(W3C)于1998年5月发布的样式表语言推荐标准,它在CSS1的基础上进行了大幅扩展,引入了众多新特性,旨在实现内容与表现的分离,极大地提升了网页设计的灵活性和可维护性。,选择紧接在另一元素后的兄弟元素。(盒模型、层叠、基本布局方式)仍是理解和运用CSS的基石,许多现有网站仍基于其构建。

leijmdas的专栏 636

css入门之CSS1、CSS2、CSS3、CSS4发展历程

CSS 最初于 1996 年发布,由用于添加字体属性的属性组成例如字体和文本的强调颜色、背景和其他元素。CSS2 于 1998 年发布,为其他媒体类型添加了样式,以便可以用于页面布局设计。CSS3 于 1999 年发布,其中添加了演示样式属性,允许从文档构建演示文稿。CSS3 将其规范划分为许多单独的模块,这使得 CSS3 更易于处理。借助 CSS3,设计人员现在可以使用自定义字体,例如 Google Fonts 和 Typecast 中可用的字体。在 CSS 和 CSS2,设计人员只能使用“网络安全字体”

蛐蛐的博客 2879

CSS2中文手册完全指南

简介:CSS2手册深入讲解了CSS2的核心概念和特性,包括基础选择器、层叠规则、样式声明、布局与定位、文本样式、背景与边框、列表样式和响应式设计。本手册旨在帮助读者全面掌握CSS2技术,了解不同浏览器的兼容性问题,并在网页设计中灵活应用。尽管CSS2相对于CSS3功能有限,学习CSS2对于理解网页样式设计的基础至关重要。

weixin_31163455的博客 930

vue中使用threejs的CSS2DRenderer的问题

引用与使用 1、配置webpack.base.conf文件 往CSS2DRenderer中导入THREE,配置webpack.base.conf文件如下: { test: require.resolve("three/examples/js/renderers/CSS2DRenderer"), use: "imports-loader?THREE=three" } 说明: 当报错THREE未...

Beam 7892

CSS到XPath的转换:css2xpath库实战应用

css2xpath库的核心功能之一是将CSS选择器转换为等效的XPath表达式。这在Web开发和自动化测试中非常有用,因为不同的库和环境对这两种选择方式的支持程度不同。开发者可以根据具体的项目需求灵活选择。例如,CSS选择器.my-class可以直接转换为XPath的,这样可以在不支持CSS选择器的环境中使用XPath来选中具有特定类名的元素。

weixin_42355400的博客 1001

magento 2 引用 css,Magento 2 如何引入 CSS

Magento 2 通过 layout 文件引入 CSS。从技术讲,使用模板文件也可以引入 CSS,但是我们强烈推荐不要这样做。CSS 的类名可以用在 templates 和 layouts 中本篇描述 Magento 应用文件系统中默认情况下 CSS 文件是如何组织的,以及在布局中引入 CSS 的推荐做法。Magento 的 CSS 是如何组织的按照惯例来讲, CSS 和 LESS 文件只存在 ...

weixin_34175978的博客 604

数据分析(二):学生成绩预测分析报告

表1 特征变量描述变量描述school学生的学校sex学生的性别age学生的年龄address学生的家庭住址类型famsize家庭规模Pstatus父母同居状况Medu母亲的教育Fedu父亲的教育Mjob母亲的工作Fjob父亲的工作reason选择学校的理由guardian学生监护人traveltime从家到学校的时间studytime每周学习时间failures过去的类失败次数schoolsup额外的教育支持famsup家庭教育支持。

m0_73963149的博客 4414

从零到一:在K210上实现YOLO模型在线训练与部署全流程

本文详细介绍了在K210芯片上实现YOLO模型在线训练与部署的全流程,涵盖数据采集、模型优化、量化转换及内存管理等关键环节。通过实战案例和代码示例,帮助开发者高效利用K210的超低功耗特性与YOLO模型的实时检测能力,适用于边缘计算和物联网应用场景。

weixin_29094539的博客 350

css2和css1,css1 css2 css3 区别有哪些?区别详解

本篇文章给大家带来的内容是关于css1 css2 css3 区别有哪些?区别详解,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。CSS1提供有关字体、颜色、位置和文本属性的基本信息,该版本已经得到了目前解析HTML和XML的浏览器的广泛支持。但自从CSS1的版本之后,又在1998年5月发布了CSS2版本,样式单得到了更多的充实。CSS2.0提供给我们了一个机制,让程序员开发时可以不...

weixin_33644222的博客 780

CSS2笔记

交集选择器 选择器1选择器2选择器3…选择器n {} 同时满足才生效并集选择器 选择器1, 选择器2, 选择器3, … 选择器n {} 有一个满足就生效后代选择器 选择器1 选择器2 选择器3 … 选择器n {}子代选择器 选择器1 > 选择器2 > 选择器3 > … 选择器n {}兄弟选择器紧挨着下一个 (相邻兄弟选择器) 选择器1+选择器2 {};(通用兄弟选择器) 选择器1~选择器2 {}伪类选择器动态伪类: (1. :link 超链接未被访问的状态。

weixin_45765215的博客 960

全自动数据分析 - Claude Code Sub-Agents:自动化数据分析工厂

别忘了!claude code也是agent框架,类似langgraph,crewAI,autogen等等agent框架。我改造claude code搞一个数据分析智能体AI。试试看行不行!:让数据分析变得像聊天一样简单!

liangdabiao的博客 1072

【应用】什么是Azure?一文读懂微软云的核心逻辑与全球版图

作为微软的核心云计算服务平台,Azure不仅是数字化转型的引擎,更是全球企业在构建、扩展与优化IT基础设施时的首选平台。在这篇文章中,我们将深入探讨Azure云服务平台的各个方面,涵盖其核心优势、架构、功能、应用场景以及未来发展趋势。

高校图书馆高级系统架构师/研究馆员,推动高校AI从概念演示到可评审、可交付、可运维:路线图与立项评审、PoC交付、评测回归与上线运维(Baseline/Eval/Ops)。 1952

CSS3和CSS2的区别是什么?底层原理是什么?

CSS3 相对于 CSS2 在功能和特性方面有了显著的提升,使得 Web 设计师和开发者能够创建更加丰富、动态和交互性强的网页。CSS3 新增的选择器、字体、背景、过渡、动画、多列布局、媒体查询、网格布局和弹性盒子等功能,大大增强了 CSS 的表现力和实用性。通过这些新特性的底层原理,我们可以更好地理解和运用 CSS3,创造出更加美观和实用的网页设计。

长风破浪会有时的博客 1194

飞牛NAS新增虚拟机功能,如果使用虚拟机网卡直通安装ikuai软路由(如何解决OVS网桥绑定失败以及打开ovs后无法访问飞牛nas等问题)

飞牛NAS新增虚拟机功能,如果使用虚拟机网卡直通安装ikuai软路由

XiaoqiangClub的博客 1万+

请对比html与css的异同,css3与css2的区别是什么?

CSS为HTML标记语言提供了一种样式描述,定义了其中元素的显示方式。CSS在Web设计领域是一个突破。利用它可以实现修改一个小的样式更新与之相关的所有页面元素。CSS2.0是一套全新的样式表结构,是由W3C推行的,同以往的CSS1.0或CSS1.2完全不一样,CSS2.0推荐的是一套内容和表现效果分离的方式,HTML元素可以通过CSS2.0的样式控制显示效果。可完全不使用以往HTML中的tabl...

weixin_40003780的博客 481

6.6kW的车载充电器(On-Board Charger, OBC)电路分析

图片展示了6.6kW的车载充电器(On-Board Charger, OBC)电路,其中包含双向和单向两种拓扑结构。接下来我们将深入分析每个模块的设计、原理及其优势,以帮助理解不同结构在实际应用中的选型和应用。

weixin_43199439的博客 5653

Android 13 Settings蓝牙列表卡顿问题排查及优化过程

此时我们的卡顿优化基本完成了,我们应该要考虑内存是否会泄漏,如果大家不知道哪些需要回收可以用leakcanary和android profiler进行内存检测,看代码有没有内存泄漏。

龚礼鹏的博客 2546

web开发之css2

CSS2 课件内容源自: https://www.runoob.com/css/css-tutorial.html CSS Position(定位) static(默认的静态定位),即没有定位,遵循正常的文档流对象,静态定位的元素不受top、left、right、bottom影响。 div.static { position: static; margin-left:50px; ...

wisherg的博客 837

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

使用CSS2DObject创建文字

项目源码:地址 使用CSS2DObject创建文字 1 引入CSS2DObject, CSS2DRenderer import { CSS2DObject, CSS2DRenderer} from "three/examples/jsm/renderers/CSS2DRenderer" 2 render初始化 initCSSRender() { this.CSSRender ...

qq_38008116的博客 5683

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

HTML5和CSS3技术出来了 还需要学习CSS2吗?

HTML5和CSS3技术出来了 还需要学习CSS2吗? 答案是必须学习CSS 2.0版技术。 因为CSS3是基于CSS2版本升级添加一些效果,但这些布局效果只有高版本IE浏览器才能呈现。 学会了CSS2对应CSS3只需要了解下即可会使用。 对应HTML5也是基于HTML4版本升级,增加可以自定义标签,比如以前布局网页头部局部,html5可以直接做为标签使用。

u013951435的专栏 1248

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

CSS2/CSS3 垂直水平居中

CSS垂直水平居中,CSS3垂直水平居中

BiuBiu_Tian(田) 1568

创建灵活的CSS2边框效果

创建灵活的CSS2边框效果 作者: ZDNet China 2004-01-09 12:12 PM 在Internet繁荣发展的早期,为了实现我想要的页面外观和行为,不得不编写一些“丑陋”的代码。我花费了大量时间去准备无数的图形文件,用他们创建鼠标特效和导航栏,结果却发现要通过一个28.8K的modem来下载它们需要的时间太长了。我希望哪天网络带宽能像流水一样通畅无阻,那样就能很快地下载页面。

sugar88的学习收集专栏 2285
上一篇: 07_注解与动态代理
下一篇: CSS-3
code_stream
博客等级 码龄4年 1238粉丝 169原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值