最近开发微信小程序的时候发现里面的text标签中的内容并不好控制包括边距以及大小问题。比如使用margin-top进行位置调整是无效的,如图所示:
但是需要注意:除了margin-top外,另外三个又是有用的(margin-left,margin-bottom,margin-right)如图所示:
究其原因,是因为text标签不属于块级元素,而是属于行内元素,所以也并不建议直接使用上述三个去直接调整位置。下面我提供几种方法去解决这种问题:
1、如果想使用margin这一类去控制位置,那么我们只要把它变成块级元素即可,就是加上display:block;
2、当然我们也可以直接在text的外层加上一个view容器,这样view容器就可以直接被margin控制了,相应也能够控制里面的text:
3、因为text本身就属于行内元素,所以我们也可以用行内元素的line-height去控制位置:
4、还有一种方法就是在text的父容器中用内边距padding去控制位置也可以实现:
以上几种方法是为了解决text标签无法用margin-top去控制位置的问题。其实对于行内元素text来说,直接定义它的宽高也是无效的,这也是有小伙伴问的一个问题,如下图所示:
同理我们也可以将其设置为块级元素之后再进行调整大小:
以上便是我对这个问题的一些个人见解,希望大家能够多批评指正。