【重构笔记Vol.2】H5页面输入框光标垂直居中

【重构笔记Vol.2】H5页面输入框光标垂直居中,第1张

关于Input在手机端光标不垂直居中的问题,网上的一些资料是这么解释的:
下面用demo来做个测试。
设计一个line-height为34rem的输入框。在PC页面上我们只需要直接写line-height:34rem便可实现。
在移动端如果只设置line-height:34rem,是这样的:
修复后:

修复方法:
1 设置line-height与字体大小一样的值

2 利用padding的上下边距将文字和光标居中(demo中line-height原本期望值为34, 用34-14的字体大小,得到的2在对半分就是内边距的数值了)

1盒子简介:在CSS处理网页时,它认为每个元素都包含在一个不可见的盒子里,那么网页布局就相当于摆放盒子

2盒子模型组成部分:

内容区(content)

内边距(padding)

外框(border)

外边距(margin)

1box的宽高可以用 width和heigh t来设置

注意,width和height只是设置盒子内容区大小,而不是盒子的整个大小,盒子可见框的大小由内容区,内边距和边框共同决定。因此计算 盒子大小=内容区+边框+内边距

2为元素设置边框

要为一个元素设置红边框 必须指定三个样式(缺一不可)

border-width:边框的宽度

border-color:边框的颜色

border-style:边框的样式

使用border-width可以分别指定四个边框的宽度。

如果在border-width制定了四个值,则四个值会分别设置给 上右下左 ,按照顺时针的方向设置的。

如果指定三个值,则三个值会分别设置给 上 左右 下

如果当指定两个值,则两个值会分别设置给 上下 左右

如果当指定一个值,则四边 全都是该值

这个规律同时适用于border-color / style
除了border-width,CSS中还提供了四个 border-xxx-width

xxx的值可能是top right bottom left , 专门用来设置指定边的宽度 。

和宽度一样,color也提供四个方向的样式,可以分别指定颜色。例如,border-xxx-color

style也可以分别指定4个边的边框样式,规则和width一样,同时它也提供border-xxx-style四个样式,来分别设置四个边。

border  的边框样式简写方式,通过它可以同时设置四个边框的样式,宽度,颜色, 而且没有任何的顺序要求。但是!border一指定就是同时指定四个边不能分别指定。

border-xxx ,例如border-top   border-right   border-bottom  border-left

可以单独设置四个边的样式,规则和border一样,只不过他只对一个边生效。

内边距(padding),指的是盒子的内容区域盒子边框之间的距离。

一共有四个方向的内边距,可以通过:

padding-top

padding-right

padding-left

padding-bottom

来设置四个方向的内边距

内边距会影响盒子的可见框的大小,元素的背景会延伸到内边距。

盒子的大小由内容区、内边距和边框共同决定。

盒子可见框的宽度=border-left-width + padding-left + width + padding-right + border-right-width

可见框的高度=border-top-width + padding-top + height + padding-bottom + border-bottom-width

使用padding可以同时设置四个边框的样式,规则和border-width一致

外边距指的是当前盒子与其他盒子之间的距离,他不会影响可见框的大小,而是会影响到盒子的位置。

盒子有四个方向的外边距:

margin-top

margin-rigtht

margin-bottom

margin-left

由于页面中的元素都是靠左上摆放的,所以注意当我们设置上和左外边距时,会导致盒子自身的位置发生改变。

而如果是设置右和下外边距会改变其他盒子的位置

外边距也可以指定一个负值,如果外边距设置的是负值,则元素会向反方向移动

margin还可以设置为auto,auto一般只设置给水平方向的margin

如果只指定,左外边距或者右外边距的margin为auto则会将外边距设置为最大值

垂直方向外边距如果设置为auto,则外边距默认就是0

如果将left和right同时设置为auto,则会将两侧的外边距设置为相同的值,就可以使元素自动在父元素中居中,所以我们经常将左右外边距设置为auto,以使元素在父元素中水平居中。

同时,外边距同样可以使用简写属性margin,可以同时设置四个方向的外边距,规则和padding一样。

调整竖排文字的间距有以下两种方法:

方法一

1、当编辑好文档,如下图所示。

2、然后选择内容,然后再选择工具栏上面的“开始”里找到“行和段落”的间距按钮。“选择”行距选项,(如果是上面常用的参数间距,可以直接选择)。

3、打开“段落”窗口,把定义了文档网格的√去掉(减小到12磅以下一定要去掉),在选择最小行距值,如5磅,再确定即可。

方法二

1、编辑好文档,然后选择文字,再选择工具栏上的“开始”上“中文版式”设置按钮。选择“文字调整”。

2、把间距根据自己的要求在原有的基础上修改大或小。

3、如修改大,效果如下图所示。

“页边距”:页面上打印区域之外的空白空间。
1、设置页边距: 在“上”、“下”、“左”和“右”框中输入所需的页边距大小。
2、设置页眉或页脚的页边距
1)若要更改页眉和页顶端之间的距离,在“页眉”编辑框中输入新的边距数值即可。
2)若要更改页脚和页底端之间的距离,在“页脚”编辑框中输入新的边距数值即可。
注:这些设置值应该小于工作表中所设置的上、下边距。

原理:

h3本来是有默认样式的:display:block; margin:15em 0(这里忘记多少了),还有若干其他的,这里主要是这两个,

因此 h3 本来是自带垂直外边距的;

2  display: inline 是只能够设置水平外边距,不受垂直外边距影响,所以h3变成display:inline的话就不会有那种情况了。所以不少网站都会讲h1-h6加上margin:0;

3 当父元素没有margin-top,而第一个子元素有margin-top的话,其margin-top会作用到父元素上,原因可以自行百度“margin 父元素”,这个现象和标准的文档流有关

内边距padding
外边距margin
<div style="border:1px solid #000;width:100px;height:100px;">
<p style="margin:10px;">这是一段给了上下左右四个方向的外边距的文字</p>
</div>
<div style="border:1px solid #000;width:100px;height:100px;">
<p style="padding:10px;">这是一段给了上下左右四个方向的内边距的文字</p>
</div>


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13376933.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-24
下一篇 2023-07-24

发表评论

登录后才能评论

评论列表(0条)

保存