`
bencode
  • 浏览: 109618 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

第1叶(hellburnn)

    博客分类:
  • WEB
阅读更多
偶米想到现在专做前端了,从一个后端Java程序员,到PHP,再到web前端, 真是有趣。
越来越轻量级,团队合作也少了很多(可喜还是可悲?)。

这过程中肯定会碰到好多问题,做前端,要细心,像雕琢。。
经验的积累,变得更加重要了, 记录,把重要的都记下来,仅为了以后少点麻烦。




对,做的就是这个页面,虽然简单,但却也有些东西想记录

1. Logo
用的是 absolute 定位,当然是相对于外围的container的, 外围container是固定的宽度, 水平居中对齐。

2. 顶导横(top nav)
是一个包含链接的无序列表
要实现的hover效果,链接的 display 为 block, 为了在IE下不让其扩展开,需要 float left
因为水平方向, 所以 li 的 float 为 left, 这同时也闭合了里面的a元素(浮动元素闭合浮动元素)



下面要闭合 top nav 的 ul, 我是用这样的css的

#top-nav {
  overflow: auto;
  width: 898px;
...


当然,可以使用float left闭合, 但是紧挨top-nav上面的Logo是绝对定位的, 这样在IE下,LOGO可能会莫名消失,
所以在absolute旁边的元素,我没有使用float, 而是采用 overflow: auto定位

但这在IE中还不够, 还需要一个css语句触发layout让其闭合, 恰好这里需要一个width。

如果不能设置windth, 那么我们可以这样闭合:

#id {
	overflow: auto;
	display: inline-block;  // 这个会让IE闭合浮动元素
}
#id {
	display: block;	// 把它设置回来
}


当然可以使用zoom:1, _height:1% 等来触发ie的layout,这些东西感觉专门为IE设计的,但是却通不过w3c css validator,

我们公司的客户很挑剔:
1.首先要在各种浏览器中完美显示
2.代码要精简,美观,后续程序员才可以更好地工作(在欧洲,我们接触不到, 也不会德语)
3.需要通过xhtml1.0 strict w3c validator和css validator,而且最好还要无警告(这个很晕)。


3. 主导横
也是一个无序列表ul, 列表中有链接, ul之间有虚线装饰, hover 的时候,要盖住两边的虚线,如上图。

首先,li之间的那条虚线,可以采用 background 来显示(放在top 还是bottom上呢?)

我把 li 的margin-top 设置为-1, 这样hover的时候, 不仅能盖住自己的元素,而且能盖住上面元素的最后一个像素
如果虚线刚好在这个像素内,那就完成任务啦。

大概像这样:
#main-nav li {
	margin-top: -1px;
}
#main-nav li a {
	display: block;
	width: 159px;
	color: #fff;
	text-align: right;
	padding: 7px 20px 5px 0px;
	background: url(../img/main_nav_item_bg.gif) no-repeat left bottom; // 虚线放在底部
}
#main-nav li a:hover {
	color: #7d1e1c;
	text-decoration: none;
	background: url(../img/main_nav_item_hover_bg.gif) repeat left top;	//...
}


4. 二级导横
本来我想采用float right 再 margin right, 负margin top, 但是这时候肯定会碰到双倍margin(right)的问题。
双倍margin的问题,本可以在元素加 display: inline来解决, 但在我这个问题中,加入inline 不知道为啥会破坏里面的文字。

嗯, 其实我那是舍近求远, 最后我采用绝对定位, 很方便地解决了这个问题。


分享到:
评论

相关推荐

    基于小程序的学习自律养成小程序源代码(java+小程序+mysql+LW).zip

    本微信学习自律养成小程序的设计与实现有管理员和用户两个角色。管理员功能有个人中心,用户管理,学习计划管理,计划打卡管理,计划历史管理,留言板管理,系统管理等。用户功能有注册登录,学习计划,计划打卡,计划历史,留言板管理,留言板等。 项目包含完整前后端源码和数据库文件 环境说明: 开发语言:Java JDK版本:JDK1.8 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/idea Maven包:Maven3.3 部署容器:tomcat7 小程序开发工具:hbuildx/微信开发者工具

    关于开展研究性学习课程的通知 (2).doc

    关于开展研究性学习课程的通知 (2).doc

    【国富期货-2024研报】USDA美豆当周出口检验162万吨符合预期CONAB巴西大豆播种率94.1%.pdf

    【国富期货-2024研报】USDA美豆当周出口检验162万吨符合预期CONAB巴西大豆播种率94.1%.pdf

    基于小程序的大学校园二手书籍拍卖小程序源代码(java+小程序+mysql).zip

    项目包含完整前后端源码和数据库文件 环境说明: 开发语言:Java JDK版本:JDK1.8 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/idea Maven包:Maven3.3 部署容器:tomcat7 小程序开发工具:hbuildx/微信开发者工具

    深圳建设工程集团施工现场审计管理规定.docx

    深圳建设工程集团施工现场审计管理规定

    Qt进阶之Q-ENUM、Q-FLAG、Q-DECLARE-FLAGS、Q-DECLARE-OPERATORS-FOR-FLAGS相关宏的深度探秘与点亮高效编程之路

    在`Qt`的广袤编程世界里,隐藏着如魔法般强大的元素,那便是`Q_ENUM`、`Q_FLAG`以及与之紧密相连的`Q_DECLARE_FLAGS`、`Q_DECLARE_OPERATORS_FOR_FLAGS`。它们犹如神秘的咒语与符文,一旦掌握,便能点亮高效编程之路。无论是构建复杂的图形界面,还是处理底层的数据逻辑,这些`Qt`进阶魔法都将赋予开发者全新的力量,让代码更加简洁、灵活且美观。

    文件网络安全学习视频我爱i

    文件网络安全学习视频我爱i

    【JCR一区级】基于matlab豪猪算法CPO-CNN-BiLSTM-Attention故障诊断分类预测【Matlab仿真 5442期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    基于小程序的微信点餐系统小程序源代码(java+小程序+mysql+LW).zip

    本微信点餐系统小程序管理员功能有个人中心,用户管理,菜品管理,新上菜品管理,预定订单管理,活动信息管理,用户评价管理,系统管理,订单管理等。用户功能有个人中心,订购菜品,我的订单,我的收藏,评价菜品等。 项目包含完整前后端源码和数据库文件 环境说明: 开发语言:Java JDK版本:JDK1.8 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/idea Maven包:Maven3.3 部署容器:tomcat7 小程序开发工具:hbuildx/微信开发者工具

    本地磁盘E的文件使用查找到的

    本地磁盘E的文件使用查找到的

    elasticsearch-analysis-dynamic-synonym-8.16.2

    解压之后在elasticsearch的jdk\conf\security\java.policy文件下新增这段,然后重启es就可以使用了 permission java.net.SocketPermission "*", "connect,resolve"; permission java.lang.RuntimePermission "setContextClassLoader"; permission java.lang.RuntimePermission "accessDeclaredMembers"; permission java.lang.RuntimePermission "createClassLoader"; permission java.security.SecurityPermission "putProviderProperty.MySQLScramSha1Sasl"; permission java.security.SecurityPermission "insertProvider";

    【CNN回归预测】基于matlab金豺算法优化卷积神经网络GJO-CNN风电数据预测(多输入单输出)【Matlab仿真 5279期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    QT项目之中国象棋人工智能

    中国象棋项目c++可视化qt

    基于知识图谱的推荐算法-KGCN实现源码+文档+全部资料.zip

    【资源说明】 基于知识图谱的推荐算法-KGCN实现源码+文档+全部资料.zip 【备注】 1、该项目是个人高分项目源码,已获导师指导认可通过,答辩评审分达到95分 2、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 3、本项目适合计算机相关专业(人工智能、通信工程、自动化、电子信息、物联网等)的在校学生、老师或者企业员工下载使用,也可作为毕业设计、课程设计、作业、项目初期立项演示等,当然也适合小白学习进阶。 4、如果基础还行,可以在此代码基础上进行修改,以实现其他功能,也可直接用于毕设、课设、作业等。 欢迎下载,沟通交流,互相学习,共同进步!

    java毕设项目之基于springboot技术的美食烹饪互动平台的设计与实现(完整前后端+说明文档+mysql+lw).zip

    项目包含完整前后端源码和数据库文件 环境说明: 开发语言:Java 框架:springboot,mybatis JDK版本:JDK1.8 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/idea Maven包:Maven3.3

    【JCR一区级】基于matlab鲸鱼算法WOA-CNN-BiLSTM-Attention故障诊断分类预测【Matlab仿真 5451期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

    基于小程序的微信小程序打印室预约源代码(java+小程序+mysql+LW).zip

    本微信小程序打印室预约有管理员和用户两个角色。管理员功能有个人中心,用户管理,附近打印店管理,文件打印管理,当前预约管理,预约历史管理,打印记录管理,系统管理等。用户功能有搜索附近打印店,打印预约,当前预约,预约历史,我的收藏,在线客服等。 项目包含完整前后端源码和数据库文件 环境说明: 开发语言:Java JDK版本:JDK1.8 数据库:mysql 5.7 数据库工具:Navicat11 开发软件:eclipse/idea Maven包:Maven3.3 部署容器:tomcat7 小程序开发工具:hbuildx/微信开发者工具

    STM32F407连接EC20-4G模块实现单片机修改4G模块串口波特率的功能.zip

    1、嵌入式物联网单片机项目开发例程,简单、方便、好用,节省开发时间。 2、代码使用KEIL 标准库开发,当前在STM32F407运行,如果是STM32F407其他型号芯片,依然适用,请自行更改KEIL芯片型号以及FLASH容量即可。 3、软件下载时,请注意keil选择项是jlink还是stlink。 4、有偿指导v:wulianjishu666; 5、如果接入其他传感器,请查看账号发布的其他资料。 6、单片机与模块的接线,在代码当中均有定义,请自行对照。 7、若硬件有差异,请根据自身情况调整代码,程序仅供参考学习。 8、代码有注释说明,请耐心阅读。

    【JCR一区级】基于matlab灰狼算法GWO-CNN-BiLSTM-Attention故障诊断分类预测【Matlab仿真 5446期】.zip

    CSDN Matlab研究室上传的资料均有对应的仿真结果图,仿真结果图均是完整代码运行得出,完整代码亲测可用,适合小白; 1、完整的代码压缩包内容 主函数:main.m; 调用函数:其他m文件;无需运行 运行结果效果图; 2、代码运行版本 Matlab 2019b;若运行有误,根据提示修改;若不会,私信博主; 3、运行操作步骤 步骤一:将所有文件放到Matlab的当前文件夹中; 步骤二:双击打开main.m文件; 步骤三:点击运行,等程序运行完得到结果; 4、仿真咨询 如需其他服务,可私信博主或扫描博客文章底部QQ名片; 4.1 博客或资源的完整代码提供 4.2 期刊或参考文献复现 4.3 Matlab程序定制 4.4 科研合作

Global site tag (gtag.js) - Google Analytics