CSS中的各个选择节点,都有样式最后一个无样式的快捷解决方法

2.1.3 多标签

  多标签选择器一般和html上下文有关,它有以下集中分类

  1. 选择一个祖先的所有子孙节点,例如 div p{…}
  2. 选择一个父元素的所有直属节点,例如 div > p{…}
  3. 选择某一个元素紧挨着的兄弟节点,例如 li + li{…}
  4. 选择某一个元素的所有同胞节点,例如 span ~ a{…}
  5. 以上各种情况的组合应用(不要组合过于复杂,编码讲求可读性第一)

  给大家列举一个比较典型的应用,如下图

  

  上图中的效果应该比较常见,在各个菜单之间加下划线。我之前的实现是:每个li都加一个border-bottom,在把最后一个li的border-bottom去掉。

  其实完全没必要这样麻烦,下面一个样式设置即可解决:

  

兄弟选择节点第一个li没选中,后面的都选中了

前面提到,为盒子模型设置宽度,结果只是设置了内容的宽度,这个不合理。如何解决这一问题?答案就是:box-sizing:border-box

  

  如上图,div设置了box-sizing:border-box之后,300px的宽度是内容 + border + 边框的宽度(不包括margin),这样就比较符合我们的实际要求了。

  建议大家在为系统写css时候,第一个样式是:

  大名鼎鼎的bootstrap也把box-sizing:border-box加入到它的 * 选择器中,我们为什么不这样做呢?

时间: 2024-12-21 19:51:54

CSS中的各个选择节点,都有样式最后一个无样式的快捷解决方法的相关文章

eclipse 中提示tomcat 的端口被占用了 后的最快捷解决方法

很多时候运行tomcat 的时候总是会提示tomcat 的端口呗占用 但是任务管理器里面还找不到是哪个端口被占用了 因此很多人就重新配置tomcat  或者去修改tomcat的端口号 ,其实这么做太麻烦了 ,小弟在这里告诉你一个非常简单的方法. 1.在开始菜单中选择运行  然后输入cmd  进入DOS界面.显示如下: 2.在Dos窗口中输入netstat   -ano|findstr  8080(注意的 我的透明cat 的断口号 是8080 你的断口号是多少就写多少) 输入完成后回车 会弹出下面

.NET中TextBox控件设置ReadOnly=true后台取不到值三种解决方法

.NET中TextBox控件设置ReadOnly=true后台取不到值三种解决方法 当TextBox设置了ReadOnly=true后要是在前台为控件添加了值,后台是取不到的,值为空,多么郁闷的一个问题经过尝试,发现可以通过如下的方式解决这个问题.感兴趣的朋友可以了解下 当TextBox设置了ReadOnly="true" 后,要是在前台为控件添加了值,后台是取不到的,值为“空” 原理没想通,说不清楚微软是出于什么考虑的,不过有时是要我们能通过前台脚本来填充值,并不希望用户修改其控件内

python中引入包的时候报错AttributeError: module 'sys' has no attribute 'setdefaultencoding'解决方法?

python中引入包的时候报错:import unittestimport smtplibimport timeimport osimport sysimp.reload(sys)sys.setdefaultencoding('utf-8') AttributeError: module 'sys' has no attribute 'setdefaultencoding'解决方法: 1.python2中解决方法:reload(sys)sys.setdefaultencoding('utf-8'

ios开发中,A valid provisioning profile for this executable was not found,的解决方法

手头上的一个ios项目在上架后,再进行时出现了以上的这个错误,这是上架后忘了对一些配置进行复原 我的项目解决方法是: 是上面的这一块出现了问题,图片上的配置是正常的情况,但是上架的时候对其进行了修改,改成公司的名称,所以一直在报那个错误. ios开发中,A valid provisioning profile for this executable was not found,的解决方法

JNI在eclipse中出现Unresolved inclusion: <jni.h>或Type 'jint' could not be resolved等解决方法

在eclipse中经常出现这类错误,include文件报错或者是jint,jclass,JNIEnv could not be resolved等,但可以编译通过,可以经过这个步骤消除这些错误或警告 1. 打开.project,删除cdt部分 <buildSpec> <buildCommand> <name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name> <triggers>cl

zend studio中ctrl+鼠标左键无法转到类或函数定义文件的解决方法

zend studio中ctrl+鼠标左键无法转到类或函数定义文件的解决方法: zendstudio 时常 无法ctrl+左键 跳转 到函数源 代码 是创建工程的方式造成的,很有可能是把先前存在的工程以file的形式导入, zendstudio 就把工程当作文档来处理了.解决的办法是: 右键点击工程->configure->add php support 然后系统会自动rebuild工程/workspace.至此,问题解决! 如果你想要zendstudio支持javascript的语法高亮和流

Mac系统中python idle导入第三方模块成功,ecplise导入python第三方模块失败解决方法

遇到一个比较纠结了4个月的问题,一直没有在意,今天实在忍受不了,尝试各种解决办法,终于把这个烦人的问题完美解决,不敢独享,写出来和各位大神共享. 问题:在mac OSx操作系统下,安装了python第三方模块,MySQLdb.xlrt.xlwt.selenium等等,在python的idle中可以成功的import这些模块,但是在eclipse中缺始终无法导入,提示"no module named xxxx". 在网上和各个pythonQQ群中搜索各种解决方法,无果,群里还有个大神说苹

Android开发中怎样用多进程、用多进程的好处、多进程的缺陷、解决方法(转)

转自:http://blog.csdn.net/spencer_hale/article/details/54968092 1.怎样用多进程 Android多进程概念:一般情况下,一个应用程序就是一个进程,这个进程名称就是应用程序包名.我们知道进程是系统分配资源和调度的基本单位,所以每个进程都有自己独立的 资源和内存空间,别的进程是不能任意访问其他进程的内存和资源的. 如何让自己的应用拥有多个进程: 四大组件在AndroidManifest文件中注册的时候,有个属性android:process

hibernate中对于数据库的Text注解出现 No Dialect mapping for JDBC type: -1解决方法

hibernate中对于数据库的Text数据类型不支持. hibernate 使用hql查询包含text类型字段的时候很好.如果使用native sql也就是使用  createSQLQuery方法查询text类型的时候总是报错: org.hibernate.MappingException: No Dialect mapping for JDBC type:-1 atorg.hibernate.dialect.TypeNames.get(TypeNames.java :56) 是hiberna