发表于: 2020-08-22 22:41:37
2 1202
今天完成的事情:今天主要修改了任务四重新提交,对于定位的认识更加准确了,之前的样式问题是因为高度写做了vw值,对于一个美观好看的app移动端布局,宽度可以设置为百分比,但是高度需要固定,不然再不同像素下展现出来的样式就很丑。
然后深入了解了任务四的深度思考,
1.position定位有哪几种?各有什么特点
答:absolute(绝对定位),reletive(相对定位),fixed(固定定位),float(浮动),
其中reletive不可以层叠,没有脱离文档流,设置为相对定位的元素框会偏移某个距离。元素仍然保持其未定位前的形状,它原本所占的空间仍保留。并且在使用相对定位时,无论是否进行移动,元素仍然占据原来的空间。因此,移动元素会导致它覆盖其它框。
绝对定位可以层叠元素,从文档流中删除,并且绝对定位会绝相对于最近已经定位的父元素定位。
固定定位概念想css长度单位vw一样,相对于视窗本身的一个定位,类似于修真院右下角上翻页下翻页效果,无论怎么滑动滚动条,其位置永远不变。
2.哪些css属性可以设置百分比,其计算原则是什么?
可设置属性
盒模型系列:
content: width(参照包含块宽度)、height(参照包含块高度)
padding(参照包含块宽度)
border
border-radius(参照包自身宽度&高度)
border-image
border-image-slice(参考图片尺寸)
border-image-width(参考自身宽度&高度)
margin(参照包含块宽度)
定位系列:
left、right(参照包含块宽度)
top、bottom(参照包含块高度)
文本系列:
text-indent(参照包含块宽度)
word-spacing(参照受影响字体宽度)
text-size-adjust(参考相对应文字字号)
font-size(参照包含父元素字号)
flex系列:
flex-basis(参考flex容器大小)
background系列:
background-position(参考背景定位区域大小-背景图片大小,其中大小指的是水平偏移的宽度和垂直偏移的高度)
background-size(相对于定位区域)
3.常见的表单元素有哪些?各有什么属性?
form 表单
属性
action: 提交表单时执行的动作,可以在此指定某个服务器表单处理脚本(如果省略action,action被设置为当前页面)
method: HTTP方法(GET|POST)
accept-charset:使用的字符集
autocomplete: 自动完成表单(默认开启)
enctype:提交数据的编码
novalidate:规定不验证表单
target:规定action属性中地址的目标(默认_self,也就是指向当前)
input 输入,可通过改变type变换形态
属性 其他属性参考了解HTML表单之input元素的30个元素属性
type: text(文本) | password(密码,变圆点) | checkbox(复选框) | radio(单选)
html5新增属性:color & date & datetime & datetime-local & email & month & number & range & search & tel & time & url & week
datalist(html5) <input>的预定义选项列表, input的list属性引用datalist的id即可关联
子元素option 待选项
label 标签,可以通过for属性绑定对应input的id
select 下拉列表
子元素option 待选项
textarea 多行文本框, 用rows&cols控制大小
button 按钮,可通过改变type变换作用
属性type: button(按钮) | sumbit(提交) | reset(重置)
fieldset 表单外框
子元素legend 表单外框名称
详见demo
<form action ="http://www.baidu.com" method="get">
用户名:<input type="text" name="txtName"/><br/>
密码:<input type ="password" name="txtPwd"/><br/>
<input type="submit" value="提交到百度"/> <input type ="reset" value="清空"/><br/>
<fieldset>
<legend>性别</legend>
<input type="radio" name="sex"/>男<br/>
<input type="radio" name="sex"/>女<br/>
</fieldset>
<select size="1">
<optgroup label="广东省">
<option>中山</option>
<option>广州</option>
<option>深圳</option>
<option>东莞</option>
</optgroup>
<optgroup label="江西省">
<option>上饶</option>
<option>南昌</option>
<option>九江</option>
<option>赣州</option>
</optgroup>
</select>
<br/>
<input type="file"/><br/>
<textarea cols="100" rows="30">
</textarea>
</form>
4.如何理解HTML结构的语义化?
含义:标签有特定的意义,即内容的结构化(内容语义化),选择合适的标签(代码语义化). 例如header指页面顶部栏,nav指导航栏.
意义:
代码结构优雅,便于阅读理解文档布局,便于开发合作维护
爬虫解析方便
用户体验 & 特殊设备解析(title、alt的信息注释)
最佳实践:
少用无意义的div&span, 无特定意义时尽量用p取代div
纯样式标签用CSS替代
表格标题用caption,表头用thead&th,主体用tbody&td,尾部用tfoot包围.
每个input标签的对应的说明文本都要使用label标签,通过设置label的for=(input's id)即可关联
5.使用fixed的时候,在手机上查看是否会有问题,怎么解决?
没有遇到过
6.常见的移动端登录页header有哪些实现方式?
绝对定位,浮动和flex三种实现
明天计划的事情:继续做任务五
遇到的问题:绝对定位和相对定位问题,师兄已解答
收获:对于定位有初步的了解。
评论