direction和writing-mode的介绍
direction介绍
属性值和兼容都很好
CSSdirection属性简单好记,属性值少,兼容性好,关键时候省心省力,是时候给大家宣传宣传,不要埋没了人家的特殊技能。
| Chrome | Safari | Firefox | Opera | IE | Android | iOS |
|---|
| 2.0+ | 1.3+ | Any | 9.2+ | 5.5+ | Any | 3.1+ |
|---|
从表中可以看出android和ios的很早版本就在支持direction属性了。基本上,大家只要关心下面这两个属性值就好了:
direction: ltr; // 默认值
direction: rtl;//标点符号也是反的,适用于阿拉伯文字和古汉语等
其中,ltr是初始值,表示left-to-right,就是从左往右的意思,rtl则是另外一个值,right-to-left缩写,就是从右往左的意思。
默认时的图片是从左往右依次排布的;就是direction: ltr; // 默认值
<p><img src="demo.jpg" alt=""><img src="demo1.jpg" alt=""></p>
那通过direction: rtl; 就可以改变内联块元素的顺序:从右向左依次排布:
<p class="rtl"><img src="demo.jpg" alt=""><img src="demo1.jpg" alt=""></p>
<style>
.rtl{
text-align: left;
direction:rtl;
}
</style>
看吧,很神奇对不对,代码里并没有改变书写顺序;只需要加上{text-align:left;direction:rtl;}就让文档流的渲染改变了方向;
direction只能改变内联块元素的顺序,对于内联元素和text-align是一样的
那什么是“内联块元素”呢?包括替换元素(replaced element),如<img>,<button>,<input>,<video>,<object>等,或者inline-block的元素。因此,只有任意元素设置display:inline-block,都会看到左右顺序的变化。
简单的一个domo
在做弹窗的时候;一般都有确定和取消button;有的是左‘取消‘右‘确认‘,有的是左‘确认’右’取消’。如果 在同一个项目中需要2种情况都存在的时候呢?
第一种;可以用flex布局,但flex布局在安卓低版本webview下有兼容问题;
第二种就是用direction:rtl;属性了;
<div style="text-align: center;"><span>确定</span><span>取消</span></div>
<style>
span {
display: inline-block;
background-color: #f0f3f9;
padding: 5px 10px;
margin: 0 10px;
}
</style>
<div class='rtl' style="text-align: center;"><span>确定</span><span>取消</span></div>
<style>
.trl{
direction:rtl;
}
span {
display: inline-block;
background-color: #f0f3f9;
padding: 5px 10px;
margin: 0 10px;
}
</style>
writing-mode介绍
先来看看writing-mode都有哪些属性值:
writing-mode: horizontal-tb; //默认值 水平从左到右满横行后折行;
writing-mode: vertical-rl; //垂直从上到下书写满竖行后折行(从右边开始书写)古代汉语的顺序
writing-mode: vertical-lr; //垂直从上到下书写满竖行后折行(从左边开始书写)
和direction相似writing-mode也是改变文档流的顺序滴,在caniuser网站显示的兼容性基本所有现代浏览器都支持此属性。
中国古诗词
writing-mode属性本来就是为了解决像中国古汉语这样的排版顺序的;像
<style>
.verticle-mode {
writing-mode: vertical-rl;
}
</style>
<div class="verticle-mode">
<h4>枫桥夜泊</h4>
<p>月落乌啼霜满天,</p><p>江枫渔火对愁眠。</p><p>姑苏城外寒山寺。</p><p>夜半钟声到客船。</p>
</div>
别的地方能用吗
direction和writing-mode的介绍的更多相关文章
- 改变CSS世界纵横规则的writing-mode属性
改变CSS世界纵横规则的writing-mode属性 这篇文章发布于 2016年04月27日,星期三,23:12,归类于 css相关. 阅读 8292 次, 今日 71 次 by zhangxinxu ...
- Python 练习 —— 2048
1. 引言 2048 这段时间火的不行啊,大家都纷纷仿造,"百家争鸣",于是出现了各种技术版本号:除了手机版本号,还有C语言版.Qt版.Web版.java版.C#版等,刚好我接触P ...
- 树莓派学习笔记——使用文件IO操作GPIO SysFs方式
0 前言 本文描写叙述假设通过文件IO sysfs方式控制树莓派 GPIO端口.通过sysfs方式控制GPIO,先訪问/sys/class/gpio文件夹,向export文件写入GPIO编号, ...
- Linux下用文件IO的方式操作GPIO(/sys/class/gpio)
通过sysfs方式控制GPIO,先访问/sys/class/gpio目录,向export文件写入GPIO编号,使得该GPIO的操作接口从内核空间暴露到用户空间,GPIO的操作接口包括direction ...
- Linux下用文件IO的方式操作GPIO(/sys/class/gpio)(转)
通过sysfs方式控制GPIO,先访问/sys/class/gpio目录,向export文件写入GPIO编号,使得该GPIO的操作接口从内核空间暴露到用户空间,GPIO的操作接口包括direction ...
- 使用GPIO监听中断
#include<stdlib.h> #include<stdio.h> #include<string.h> #include<unistd.h> # ...
- linux下使用文件IO监听GPIO中断
完整的程序如下: #include<stdlib.h> #include<stdio.h> #include<string.h> #include<unist ...
- GPIO编程2:使用GPIO监听中断完整程序
一个完整的使用GPIO捕捉中断的程序: #include<stdlib.h> #include<stdio.h> #include<string.h> #inclu ...
- 成为编程大牛很简单,把这些书看个八成就OK
原文链接:http://lucida.me/blog/developer-reading-list/ 本文把程序员所需掌握的关键知识总结为三大类19个关键概念,然后给出了掌握每个关键概念所需的入门书籍 ...
- EnCase v.s. FTK - find out Chinese characters writing in different direction
A friend of mine said to me that she could fool those forensic tools easily by changing writing dire ...
随机推荐
- 线性反馈移位寄存器(LFSR)-非线性反馈移位寄存器的verilog实现(产生伪随机数)
一.线性反馈移位寄存器(LFSR) 通过对事先选定的种子做运算使得人工生成的伪随机序列的过程,在实际中,随机种子的选择决定了输出的伪随机序列的不同,也就是说随机种子的选择至关重要. 产生伪随机数的方法 ...
- 安装php7.2
1,yum源默认的版本太低了,手动安装有一些麻烦,所以可以采用yum的方式进行安装. 2,检查当前安装的PHP包yum list installed | grep php 如果有安装的PHP包,先删除 ...
- java正则(贪婪、勉强)
贪婪.勉强和侵占量词间的不同 在贪婪.勉强和侵占三个量词间有着细微的不同. 贪婪(*, ?, +):读入整个串,从后往前匹配 勉强(*?, ??, +?):从前往后匹配 侵占(*+, ?+, ++): ...
- Ajax - XMLHTTP实例
url:http://localhost/index.htm <html> <head> <title>Ajax</title> <script ...
- django-crontab使用
用 django-crontab 为 Django 添加定时任务 需求 做后台开发的时候,有时候会遇到这样的需求,在某个固定时间或者一定时间间隔自动触发某一事件.比如说我有一个需求要求是,周一到周五早 ...
- 86)PHP,PDO常用函数
(1) (2) 举例:假如我的sql语句有问题,那么我输出这两个函数所产生的信息. 还有一组函数: 分别是,开启事务,回滚事务,提交事务,判断是否处于事务中. errorInfo() 错误信 ...
- EncryptUtils
package me.zhengjie.core.utils; import org.springframework.util.DigestUtils; import javax.crypto.Cip ...
- python-django框架-电商项目-项目部署_20191127
python-django框架-电商项目-项目部署: uwsgi作为web服务器: 在pycharm中启动项目:使用python manage.py runserver 这个runserver是dja ...
- Linux系统添加新用户
Linux系统中一般不直接使用root用户进行操作,需要添加新的用户. 首先,查看当前系统已有的用户 cat /etc/passwd 查看用户组 cat /etc/group 其次,添加想要的用户组和 ...
- Analysis of Hello2 source code
Hello2 应用程序是一个 Web 模块,它使用 Java Servlet 技术来显示问候语和响应,使用的是 Java Servlet 技术. 该应用程序源代码在 tutorial-examples ...