CSS样式表代码布局基础教程
CSS样式表代码布局基础教程—课程10:外部样式表(一)十、外部样式表
外部样式表是把各种样式单独存在一个文件里,供其他多个网页调用,下面我们来看一个练习;
1、文本编辑器
1)打开记事本或 gedit、leafpad 文本编辑器,gedit 在查看菜单里选择“HTML”;
2)点菜单“文件-保存”命令,以“lx10.html”为文件名,类型所有文件,编码 UTF-8,保存到自己的文件夹;
3)按照基础02课的方法,输入、和的内容;
2、外部样式表
1)点菜单“文件-新建”,新建一个空白文档,保存文件名为 style.css ,位置跟 lx10 放一起,这是一个单独的文件;
2)在里面输入下面的内容;
/* by TeliuTe */
body {
background-color: #ccffff
font-size:1.2em
span {
color:#800000
.myblue {
color:blue
3)第一行 /* ... */ 是注释,注明作者版权用途等,根据自己的需要,
下面的内容跟内部样式表相同,各个标签和它的样式,保存一下文件;
4)回到 lx10.html 文档中,在 head 区内加上下面一行外部引用标识;
5)然后在 body 区内,输入下面的内容;
1)点菜单“文件-新建”,新建一个空白文档,保存文件名为 style.css ,位置跟 lx10 放一起,这是一个单独的文件;
6)保存一下文件,回到自己文件夹中,打开 lx10 网页,看一下效果;
7)在多个网页具有相同样式时,使用外部样式表可以节省空间和减小网页大小;
本节学习了外部样式表的使用方法,你成功地完成了本教程,欢迎继续学习本站的其他课程!
本教程由86团学校TeliuTe制作 http://teliute.laxjyj.com
(计算机基础知识,电脑知识入门学习,请到http://电脑知识网)
CSS标签大全(一)字体属性:(font)
大小 font-size: x-large(特大) xx-small(极小) 一般中文用不到,只要用数值就可以,单位:PX、PD
样式 font-style: oblique(偏斜体) italic(斜体) normal(正常)
行高 line-height: normal(正常) 单位:PX、PD、EM
粗细 font-weight: bold(粗体) lighter(细体) normal(正常)
变体 font-variant: small-caps(小型大写字母) normal(正常)
大小写 text-transform: capitalize(首字母大写) uppercase(大写) lowercase(小写) none(无)
修饰 text-decoration: underline(下划线) overline(上划线) line-through(删除线) blink(闪烁)
常用字体:(font-family)"Courier New", Courier, monospace, "Times New Roman", Times, serif, Arial, Helvetica, sans-serif, Verdana
背景属性:(background)
色彩background-color: #FFFFFF
图片background-image: url()
重复background-repeat: no-repeat
滚动background-attachment: fixed(固定) scroll(滚动)
位置background-position: left(水平) top(垂直)
简写方法 background:#000 url(..) repeat fixe辅助图片一律用背景处理d left top
区块属性: (Block)
字间距letter-spacing: normal数值
对刘text-align: justify(两端对齐) left(左对齐) right(右对齐) center(居中)
缩进text-indent: 数值px
垂直对齐vertical-align: baseline(基线) sub(下标) super(下标) toptext-topmiddlebottomtext-bottom
词间距word-spacing: normal数值
空格white-space: pre(保留) nowrap(不换行)
显示display:block(块) inline(内嵌) list-item(列表项) run-in(追加部分) compact(紧凑) marker(标记) tableinline-tabletable-raw-grouptable-header-grouptable-footer-grouptable-rawtable-column-grouptable-columntable-celltable-caption(表格标题)
方框属性:(Box)
width:height:float:clear:bothmargin:padding:顺序:上右下左
边框属性: (Border)
border-style: dotted(点线)dashed(虚线)solid(实线)double(双线)groove(槽线)ridge(脊状) inset(凹陷) outset
border-wid
th:边框宽度
border-color:#
简写方法border:width style color
列表属性: (List-style)
类型list-style-type: disc(圆点) circle(圆圈) square(方块) decimal(数字) lower-roman(小罗码数字) upper-romanlower-alphaupper-alpha
位置list-style-position: outside(外) inside
图像list-style-image: url(..)
定位属性: (Position)
Position: absoluterelativestatic
visibility: inheritvisiblehidden
overflow: visiblehiddenscrollauto
clip: rect(12px,auto,12px,auto) (裁切) css属性代码大全
一 CSS文字属性:color : #999999/*文字颜色*/
font-family : 宋体,sans-serif/*文字字体*/
font-size : 9pt/*文字大小*/
font-style:itelic/*文字斜体*/
font-variant:small-caps/*小字体*/
letter-spacing : 1pt/*字间距离*/
line-height : 200%/*设置行高*/
font-weight:bold/*文字粗体*/
vertical-align:sub/*下标字*/
vertical-align:super/*上标字*/
text-decoration:line-through/*加删除线*/
text-decoration: overline/*加顶线*/
text-decoration:underline/*加下划线*/
text-decoration:none/*删除链接下划线*/
text-transform : capitalize/*首字大写*/
text-transform : uppercase/*英文大写*/
text-transform : lowercase/*英文小写*/
text-align:right/*文字右对齐*/
text-align:left/*文字左对齐*/
text-align:center/*文字居中对齐*/
text-align:justify/*文字分散对齐*/
vertical-align属性vertical-align:top/*垂直向上对齐*/
vertical-align:bottom/*垂直向下对齐*/
vertical-align:middle/*垂直居中对齐*/
vertical-align:text-top/*文字垂直向上对齐*/
vertical-align:text-bottom/*文字垂直向下对齐*/
二、CSS边框空白
padding-top:10px/*上边框留空白*/
padding-right:10px/*右边框留空白*/
padding-bottom:10px/*下边框留空白*/
padding-left:10px/*左边框留空白*/
三、CSS符号属性:
list-style-type:none/*不编号*/
list-st
yle-type:decimal/*阿拉伯数字*/
list-style-type:lower-roman/*小写罗马数字*/
list-style-type:upper-roman/*大写罗马数字*/
list-style-type:lower-alpha/*小写英文字母*/
list-style-type:upper-alpha/*大写英文字母*/
list-style-type:disc/*实心圆形符号*/
list-style-type:circle/*空心圆形符号*/
list-style-type:square/*实心方形符号*/
list-style-image:url(/dot.gif)/*图片式符号*/
list-style-position: outside/*凸排*/
list-style-position:inside/*缩进*/
四、CSS背景样式:
background-color:#F5E2EC/*背景颜色*/
background:transparent/*透视背景*/
background-image : url(/image/bg.gif)/*背景图片*/
background-attachment : fixed/*浮水印固定背景*/
background-repeat : repeat/*重复排列-网页默认*/
background-repeat : no-repeat/*不重复排列*/
background-repeat : repeat-x/*在x轴重复排列*/
background-repeat : repeat-y/*在y轴重复排列*/
指定背景位置background-position : 90% 90%/*背景图片x与y轴的位置*/
background-position : top/*向上对齐*/
background-position : buttom/*向下对齐*/
background-position : left/*向左对齐*/
background-position : right/*向右对齐*/
background-position : center/*居中对齐*/
五、CSS连接属性:
a /*所有超链接*/
a:link /*超链接文字格式*/
a:visited /*浏览过的链接文字格式*/
a:active /*按下链接的格式*/
a:hover /*鼠标转到链接*/
鼠标光标样式:链接手指 CURSOR: hand
十字体 cursor:crosshair
箭头朝下 cursor:s-resize
十字箭头 cursor:move
箭头朝右 cursor:move
加一问号 cursor:help
箭头朝左 cursor:w-resize
箭头朝上 cursor:n-resize
箭头朝右上 cursor:ne-resize
箭头朝左上 cursor:nw-resize
文字I型 cursor:text
箭头斜右下 cursor:se-resize
箭头斜左下 cursor:sw-resize
漏斗 cursor:wait
光标图案(IE6) p {cursor:url("光标文件名.cur"),text}
六、CSS框线一览表:
border-top : 1px solid #6699cc/*上框线*/
border-bottom : 1px solid #6699cc
/*下框线*/
border-left : 1px solid #6699cc/*左框线*/
border-right : 1px solid #6699cc/*右框线*/
以上是建议书写方式,但也可以使用常规的方式 如下:
border-top-color : #369 /*设置上框线top颜色*/
border-top-width :1px /*设置上框线top宽度*/
border-top-style : solid/*设置上框线top样式*/
其他框线样式
solid /*实线框*/
dotted /*虚线框*/
double /*双线框*/
groove /*立体内凸框*/
ridge /*立体浮雕框*/
inset /*凹框*/
outset /*凸框*/
七、CSS表单运用:
文字方块
按钮
复选框
选择钮
多行文字方块
下拉式菜单 选项1选项2
八、CSS边界样式:
margin-top:10px/*上边界*/
margin-right:10px/*右边界值*/
margin-bottom:10px/*下边界值*/
margin-left:10px/*左边界值*/
CSS 属性: 字体样式(Font Style)序号 中文说明 标记语法
1 字体样式 {font:font-style font-variant font-weight font-size font-family}
2 字体类型 {font-family:"字体1","字体2","字体3",...}
3 字体大小 {font-size:数值|inherit| medium| large| larger| x-large| xx-large| small| smaller| x-small| xx-small}
4 字体风格 {font-style:inherit|italic|normal|oblique}
5 字体粗细 {font-weight:100-900|bold|bolder|lighter|normal}
6 字体颜色 {color:数值}
7 阴影颜色 {text-shadow:16位色值}
8 字体行高 {line-height:数值|inherit|normal}
9 字 间 距 {letter-spacing:数值|inherit|normal}
10 单词间距 {word-spacing:数值|inherit|normal}
11 字体变形 {font-variant:inherit|normal|small-cps }
12 英文转换 {text-transform:inherit|none|capitalize|uppercase|lowercase}
13 字体变形 {font-size-adjust:inherit|none}
14 字体 {font-stretch:condensed|expanded|extra-condensed|extra-expanded|inherit|narrower|normal| semi-condensed|semi-expanded|ultra-condensed|ultra-expanded|wider}
文本样式(Text Style)序号 中文说明 标记语法
1
行 间 距 {line-height:数值|inherit|normal}
2 文本修饰 {text-decoration:inherit|none|underline|overline|line-through|blink}
3 段首空格 {text-indent:数值|inherit}
4 水平对齐 {text-align:left|right|center|justify}
5 垂直对齐 {vertical-align:inherit|top|bottom|text-top|text-bottom|baseline|middle|sub|super}
6 书写方式 {writing-mode:lr-tb|tb-rl}
背景样式序号 中文说明 标记语法
1 背景颜色 {background-color:数值}
2 背景图片 {background-image: url(URL)|none}
3 背景重复 {background-repeat:inherit|no-repeat|repeat|repeat-x|repeat-y}
4 背景固定 {background-attachment:fixed|scroll}
5 背景定位 {background-position:数值|top|bottom|left|right|center}
6 背影样式 {background:背景颜色|背景图象|背景重复|背景附件|背景位置}
框架样式(Box Style)序号 中文说明 标记语法
1 边界留白 {margin:margin-top margin-right margin-bottom margin-left}
2 补 白 {padding:padding-top padding-right padding-bottom padding-left}
3 边框宽度 {border-width:border-top-width border-right-width border-bottom-width border-left-width}
宽度值: thin|medium|thick|数值
4 边框颜色 {border-color:数值 数值 数值 数值} 数值:分别代表top、right、bottom、left颜色值
5 边框风格 {border-style:none|hidden|inherit|dashed|solid|double|inset|outset|ridge|groove}
6 边 框 {border:border-width border-style color}
上 边 框 {border-top:border-top-width border-style color}
右 边 框 {border-right:border-right-width border-style color}
下 边 框 {border-bottom:border-bottom-width border-style color}
左 边 框 {border-left:border-left-width border-style color}
7 宽 度 {width:长度|百分比| auto}
8 高 度 {height:数值|auto}
9 漂 浮 {float:left|right|none}
10 清 除 {clear:none|left|right|both}
分类列表序号 中文说明 标记语法
1 控制显示 {display:none
|block|inline|list-item}
2 控制空白 {white-space:normal|pre|nowarp}
3 符号列表 {list-style-type:disc|circle|square|decimal|lower-roman|upper-roman|lower-alpha|upper-alpha|none}
4 图形列表 {list-style-image:URL}
5 位置列表 {list-style-position:inside|outside}
6 目录列表 {list-style:目录样式类型|目录样式位置|url}
7 鼠标形状 {cursor:hand|crosshair|text|wait|move|help|e-resize|nw-resize|w-resize|s-resize|se-resize|sw-resize}
word-wrap是控制换行的。使用break-word时,是将强制换行。中文没有任何问题,英文语句也没问题。但是对于长串的英文,就不起作用。break-word是控制是否断词的。normal是默认情况,英文单词不被拆开。break-all,是断开单词。在单词到边界时,下个字母自动到下一行。主要解决了长串英文的问题。keep-all,是指Chinese, Japanese, and Korean不断词。即只用此时,不用word-wrap,中文就不会换行了。(英文语句正常。)ie下:使用word-wrap:break- word所有的都正常。ff下:如这2个都不用的话,中文不会出任何问题。英文语句也不会出问题。但是,长串英文会出问题。为了解决长串英文,一般用 word-wrap:break-wordword-break:break-all。但是,此方式会导致,普通的英文语句中的单词会被断开(ie下也是)。目前主要的问题存在于 长串英文 和 英文单词被断开。其实长串英文就是一个比较长的单词而已。即英文单词应不应该被断开那?那问题很明显了,显然不应该被断开了。对于长串英文,就是恶意的东西,自然不用去管了。但是,也要想些办法,不让它把容器撑大。用:overflow:autoie下,长串会自动折行。ff下,长串会被遮盖。所以,综上,最好的方式是word-wrap:break-wordoverflow:hidden而不是word-wrap:break-wordword-break:break-all。
CSS样式表代码布局基础教程—课程9:链接样式九、链接样式
使用伪类可以设置链接的样式,比如改变颜色、去掉下划线等,下面我们来看一个练习;
1、文本编辑器
1)打开记事本或 gedit、leafpad 文本编辑器,gedit 在查看菜单里选择“HTML”;
2)点菜单“文件-打开”命令,打开自己文件夹里的lx7.html
3)再点菜单“文件-另存为”命令,保存文件名为 “lx9.html”
2、设置伪类
1)在 head 区内,输入内部样式表,设定各个 的锚标记样式,如下;
2)第一个 a 设定全局锚点的样式,用块显示、宽度是50像素、背景色是浅绿色,接下来是锚点 a 的成员:
link 是链接,设定页面中的链接样式,颜色蓝色,不带下划线,
visted 是访问过的链接,设定样式为栗色、不带下划线,
active 是按下鼠标时的链接,设定颜色为绿色、无下划线,
hover 是鼠标移过来悬停,设定颜色为红色、有下划线,背景色改成黄色,hover 放在其他几个成员的后面;
3)保存一下文件,回到自己的文件夹中,打开 lx9 网页,试着用鼠标点击、拖动链接,看一下效果;
本节学习了设置链接样式的基本方法,如果你成功地完成了练习,请继续学习下一课内容;
CSS样式表代码布局基础教程—课程8:内部样式表(一)
八、内部样式表
内部样式表放在网页的...区内,集中在一起方便管理,下面我们来看一个练习;
1、文本编辑器
1)打开记事本或 gedit、leafpad 文本编辑器,gedit 在查看菜单里选择“HTML”;
2)点菜单“文件-保存”命令,以“lx8.html”为文件名,类型所有文件,编码 UTF-8,保存到自己的文件夹;
3)按照基础02课的方法,输入、和的内容;
2、内部样式表
1)对系统标签使用样式,这会影响所有的这种标签,在 head 区输入下面的代码;
2)第一行是样式表开始,最后是样式表结束, 是注释标签,
首先是对 body 标签设置样式,这样凡是在 body 区里的内容,都会使用这个样式,设置背景色和文字大小
然后对 span 标签设置样式,设置内容的颜色,以后凡是用到 span 的地方,都使用这个颜色;
3)接着在 body 区里输入下面的内容;
1)对系统标签使用样式,这会影响所有的这种标签,在 head 区输入下面的代码;
4)保存一下文件,回到自己的文件夹里,打开 lx8 网页,看一下效果;
5)自定义样式选择符,除了系统的标签外,也可以自己定义需要的样式标记,在 head 的.样式表里加入下面的代码;
.myblue {
color:blue
前面的点,表示这是一个通用的样式,可以重复使用,如果是 #号,表示是一个标识符,是专用唯一的 id,myblue 是自定义的样式名称;
6)在 body 区里加入下面的代码,加在上一行的前面,再加上
标签分成两段;
7)这儿使用的是 span,里面的 class 套用的是 myblue 样式,替换了前面设的样式,
保存一下文件,到浏览器中看看效果;
本节学习了使用内部样式表的基本方法,如果你成功地完成了练习,请继续学习下一课内容;
CSS样式表代码布局基础教程—课程7:ul列表(一)七、ul 列表
对于排列有序的条目,可以使用列表来实现,下面我们来看一个练习;
1、文本编辑器
1)打开记事本或 gedit、leafpad 文本编辑器,gedit 在查看菜单里选择“HTML”;
2)点菜单“文件-保存”命令,以“lx8.html”为文件名,类型所有文件,编码 UTF-8,保存到自己的文件夹;
3)按照基础02课的方法,输入、和的内容;
2、使用列表(计算机基础知识,电脑知识入门学习,请到http://电脑知识网)
1)在后面接着输入下面的代码;
第一课
第二课
第三课
2)前面的
建立一个列表,里面的各个
是列表项,各个列表项排列对齐缩进,前面有一个圆点列表符号,
保存一下文件,到自己文件夹里,打开 lx7 网页,看看列表的效果,这儿加了 超级链接;
3)如果要去掉前面的圆点,可以在 ul 的样式里设定,前面的缩进也可以设定内边距为 0,输入下面的代码;
第一课
第二课
第三课
4)保存一下,再到浏览器里看一下,三个列表都排到了左边对齐;
5)如果要排列成横向水平的菜单样式,可以在每个列表项里加上 float 属性,防止重叠再设定一个宽度,代码如下;
6)保存一下,再到浏览器里看一下,三个列表项都水平排列了;
本节学习了列表的基本使用方法,如果你成功地完成了练习,请继续学习下一课内容;
CSS样式表代码布局基础教程—课程6:div布局(一)六、div 布局
默认 div 占据一行,第二个 div 到下一行去,怎样用 div 进行分栏布局,我们来看一个练习;
1、文本编辑器
1)打开记事本或 gedit、leafpad 文本编辑器,gedit 在查看菜单里选择“HTML”;
2)点菜单“文件-打开”命令,打开上次的 lx5 网页,再点“文件-另存为”,以“lx6.html”为文件名,保存到自己的文件夹;
3)按照两列并排来进行布局;
2、定位布局
1)在下面加一个
标签,作为主框架,在标签里加入下面的样式;
2)前面的 id 是这个 div 的标识符,用来标记这个 div 容器,
在里面的样式里设置了颜色、边框、内边距,
设定了固定宽度 604,高度 202,这个可以计算出来,根据下面两列的宽度再加上内边距;
3)修改里面的古诗的 div 样式,加上背景色、去掉内外边距,最后加上一个左浮动 float:left
4)在这个后面,再加上另一个 div,样式相同,里面输入另一首古诗 ;
5)这儿的 float:left让这个 div 框,跟上一个框并排左对齐,而不是到下一行去,
最后再加一个标签,结束最外面的大框架;
6)保存一下文件,回到自己文件夹里,打开 lx6 网页看看效果;
本节学习了使用 div 布局的基本方法,如果你成功地完成了练习,请继续学习下一课内容;
培训视频、在线学习、学习视频网站、网络学习平台技术文章 >web前端 >css教程
css常见问题:如何画多边形(三角形~六边形)
青灯夜游青灯夜游2021-09-16 10:57:38转载
利用纯CSS如何画多边形?本篇文章就来给大家介绍一下从纯CSS画三角形开始,介绍一下画四边形、五边形、六边形的方法,更高的实现方式也可以此类推画出来,希望对大家有所帮助!
今天要学习一下面试中常考的一个css题目,用css画多边形。 这一次以三角形、四边形、五边形、六边形为例,首先开始之前需要了解一些必要的知识。
一、基础知识储备
本次将利用纯CSS知识来绘制一些形状,为了绘制这些形状,首先补习一下所需的CSS基础知识点——css盒模型。【相关推荐:《css视频教程》】
1.png
由上图可以看出标准的盒模型是由content,padding,border,margin组成的,我们用代码看一下具体情况吧。
<!--HTML部分,此部分代码若是不变,后面将复用不在赘述-->
<div id="main"></div>
/*css部分*/
#main {
width: 100px
height: 100px
border: 200px solid red
}
效果图如下:
2.png
二、实战
光说不练假把式,现在就由利用这些基本的CSS属性来绘制常见的三角形、四边形、五边形……
2.1 四边形
若是不能用直接使用background-color属性来画一个四边形,由上图我们可以看出若是让content的宽高全部设为0,并设置border的宽高,那么我们就可以得到一个仅由border构成的四边形了,四边形又分为正方形、平行四边形、矩形等等,这里就让我们使用border来实现上述中的三种图形吧。
2.1.1 正方形
首先让我们来实现一下最简单的正方形吧。
#main {
width: 0px
height: 0px
border-bottom: 200px solid red
border-left: 200px solid black
border-right: 200px solid blue
border-top: 200px solid pink
}
效果如下图所示:
3.png
2.1.2 矩形
在2.1.1中我们已经实现了通过使用border来实现正方形,那么我们接下来实现一下矩形吧,根据所学过的数学知识我们只需用将正方形的调整正方形的长宽使其长≠宽即可,接下来让我们来实现一下吧。
#main {
width: 0px
height: 0px
border-bottom: 200px solid red
border-left: 100px solid red
border-right: 100px solid red
border-top: 200px solid red
}
效果如下图所示:
4.png
2.1.3 平行四边形
PS:平行四边形的实现需要使用两个三角形来实现,故此这里建议先跳过,请先前往阅读2.2中查看三角形的实现,再折返查看此处的平行四边行的方法。
此处便默认您已阅读完了2.2的内容了,接下来实现一下平行四边形。
<div id="wrapper">
<div class="public"></div>
<div class="public move"></div>
</div>
*{
margin: 0
}
#wrapper {
position: relative
}
.public {
width: 0px
height: 0px
border-bottom: 200px solid red
border-left: 200px solid transparent
border-right: 200px solid transparent
border-top: 200px solid transparent
position: absolute
}
.move {
transform: rotate(180deg)
top: 200px
left: 200px
}
效果如下图所示:
5.png
2.2 三角形
目前为止,最为简单的四边形已完成,那么此时是不是已经有感觉了呢!我们接着往下走,既然border可以实现四边形,那么三角形按道理应该也不在话下,当然三角形里面也有很多很多种类,按照角划分,可分为锐角三角形、直角三角形、钝角三角形;下面分别来实现一下。
2.2.1 锐角三角形
首先我们来看看在content的宽高都是0的情况下,border的left,right,top,bottom四个所占据的情况吧。
#main {
width: 0px
height: 0px
border-bottom: 200px solid red
border-left: 200px solid black
border-right: 200px solid blue
border-top: 200px solid pink
}
效果图如下:
6.png
从图可以看出left,right,top,bottom都是占着一个三角形的情况,那么当我们需要某个三角形时我们只需要让其他三个三角形隐藏起来不就可以了,我们可以用transparent属性值来隐藏border,那么来实现一下吧。
#main {
width: 0px
height: 0px
border-bottom: 200px solid red
border-left: 200px solid transparent
border-right: 200px solid transparent
border-top: 200px solid transparent
}
效果如图所示:
7.png
2.2.2 直角三角形
到此我们可以画出锐角三角形了,直角三角形我们根据上上图可以得到,只要显示两个border边即可,代码试一下吧
#main {
width: 0px
height: 0px
border-bottom: 200px solid red
border-left: 200px solid red
border-right: 200px solid transparent
border-top: 200px solid transparent
}
效果如图所示:
8.png
2.2.3 钝角三角形
上图证实了之前的想法的可行性了。那么接下来让我们想想钝角三角形该怎么实现呢?按照之前的想法是不行的,那么我们就需要改变一下想法。
我们可以用两个直角三角形,将小的直角三角形覆盖在大的上面,让我们试一下吧!!
<div id="main1"></div>
<div id="main2"></div>
#main1 {
width: 0px
height: 0px
border-bottom: 200px solid red
border-left: 200px solid transparent
}
#main2 {
width: 0px
height: 0px
border-bottom: 200px solid black
border-left: 150px solid transparent
position: absolute
/*这里8px是浏览器中的margin自带的间距,之前没有处理*/
top: 8px
left: 58px
}
效果图如下所示:
9.png
这次通过绝对定位来控制小的直角三角形,那么我们可以通过控制黑色三角形的颜色来显示钝角三角形。
2.3 五边形
三角形都已经学会了,那么很多图形都可以通过三角形拼凑得来,就以五边形为例,这里将以多个三角形来画出五边形。
<div id="wrapper">
<div class="main1 tool"></div>
<div class="main2 tool"></div>
<div class="main3 tool"></div>
<div class="main4 tool"></div>
<div class="main5 tool"></div>
</div>
*{
margin: 0
}
#wrapper {
position: relative
top: 300px
margin-left: 300px
}
.main2 {
transform: rotate(72deg)
}
.main3 {
transform: rotate(144deg)
}
.main4 {
transform: rotate(216deg)
}
.main5 {
transform: rotate(288deg)
}
.tool{
width: 0px
height: 0px
border-right: 58px solid transparent
border-left: 58px solid transparent
border-bottom: 160px solid red
position: absolute
top: 0
left: 0
}
效果如下图所示:
10.png
实现五边形的主要难点在于border的三个边的取值,以及旋转的角度。
2.4 六边形
到目前为止三角行、四、五边形的三种形式都实现了一遍,他们均是通过border来实现的,那么让我们来想一下怎么画出一个六边形,有条件的可以在纸上画画,我们可以把一个五边形分成6个等边三角形,让我们通过上面所学知识来实现一下六边形吧!
<div id="wrapper">
<div class="main1 tool"></div>
<div class="main2 tool"></div>
<div class="main3 tool"></div>
<div class="main4 tool"></div>
<div class="main5 tool"></div>
<div class="main6 tool"></div>
</div>
*{
margin: 0
}
#wrapper {
position: relative
top: 300px
margin-left: 300px
}
.main2 {
transform: rotate(60deg)
}
.main3 {
transform: rotate(120deg)
}
.main4 {
transform: rotate(180deg)
}
.main5 {
transform: rotate(240deg)
}
.main6 {
transform: rotate(300deg)
}
.tool{
width: 0px
height: 0px
border-right: calc(60px / 1.732) solid transparent
border-left: calc(60px / 1.732) solid transparent
border-bottom: 60px solid red
transform-origin: top
position: absolute
top: 0
left: 0
}
11.png
通过上面的方法实现五边形,这边难点主要是画出等边三角形。
上面的方法已经实现了,让我们想想其他的方法实现一下吧,这里我们将通过三个四边形实现五边形,让我们一下实验一下吧!!
<div id="wrapper">
<div class="main1 tool"></div>
<div class="main2 tool"></div>
<div class="main3 tool"></div>
</div>
*{
margin: 0
}
#wrapper {
position: relative
top: 300px
margin-left: 300px
}
.main1 {
width: calc(120px / 1.732)
height: 120px
background-color: black
}
.main2 {
width: calc(120px / 1.732)
height: 120px
transform: rotate(120deg)
background-color: black
}
.main3 {
width: calc(120px / 1.732)
height: 120px
transform: rotate(240deg)
background-color: black
}
.tool{
position: absolute
top: 0
left: 0
}
12.png
好了,目前已经讲述了三角形,四边形,五边形,六边形得到实现方式了,更高的实现方式就以此类推了。
原文地址:https://juejin.cn/post/7001772184498601991
作者:执鸢者
更多编程相关知识,请访问:编程入门!!
以上就是css常见问题:如何画多边形(三角形~六边形)的详细内容,更多请关注php中文网其它相关文章!
声明:本文转载于:掘金--执鸢者,如有侵犯,请联系admin@php.cn删除
专题推荐:css多边形三角形四边形五边形六边形
上一篇:深入浅出解析css字体图标的制作和使用(代码分享) 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)
相关文章推荐
• 如何使用HTML5+CSS3动态画一个笑脸
• 炫酷!CSS创建响应式堆叠卡片悬停效果
• 让网站更酷炫的CSS filter使用小技巧,值得收藏!
• 中秋献礼,分享一个CSS日地月公转动画效果!
技术外包,人才推荐
相关课程推荐
CSS3进阶视频教程
《CSS3进阶视频教程》本课程是由北风网录制,CSS3是CSS技术的升级版本,CSS3语言开发是朝着模块化发展的。以前的规范作为一个模块实在是太庞大而且比较复杂,所以,把它分解为一些小的模块,更多新的模块也被加入进来。这些模块包括: 盒子模型、列表模块、超链接方式 、语言模块 、背景和边框 、文字特效 、多栏布局等。
CSS3教程9235次播放
CSS3精讲视频教程
《CSS3精讲视频教程》本课程是由北风网录制,CSS3是CSS技术的升级版本,CSS3语言开发是朝着模块化发展的。以前的规范作为一个模块实在是太庞大而且比较复杂,所以,把它分解为一些小的模块,更多新的模块也被加入进来。这些模块包括: 盒子模型、列表模块、超链接方式 、语言模块 、背景和边框 、文字特效 、多栏布局等。
CSS3教程7348次播放
让布局像5G一样快:CSS Grid网格布局
Grid (网格布局): 在CSS中第一个真正意义上的布局技术, 也是CSS布局的巅峰之作, 彻底告别一维模式, 一步跨入全新的二维空间布局新时代....
CSS教程9249次播放
新独孤九贱之:CSS3 必知内容
CSS3与HTML5构成了页面的基础, 与HTML5相比, CSS3的作用更强大通常我们使用html5书写页面结构,而css3可以帮助我们完成页面元素的样式设置和元素布局,还可以完成一些动画特效
CSS教程7944次播放
最通俗易懂的html+css课程 9天速成
HTML是一种规范,一种标准,它通过标记符号来标记要显示的网页中的各个部分。CSS 能够对网页中元素位置的排版进行像素级精确控制,支持几乎所有的字体字号样式,拥有对网页对象和模型样式编辑的能力。
HTML教程13055次播放
首页
视频
直播
社区
我的