`
shuaigg.babysky
  • 浏览: 571293 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

mozilla中span设置宽度width , 画日历时发现

阅读更多

span的默认display属性是inline,这样导致了在firefox中无法对span设置宽度属性,需要调整span的display属性为inline-block就好了。这样ie中和firefox中就都能设置display属性了。

<html>
    <head>
       
    </head>
   
    <body>
        <script>
            function createCalendar(year , month) {
                //得到这一年的月份有多少天
                var daysCount = getDayCount(year , month);
                //得到1号和最大天数的日期对象
                var dateStart = new Date(year , month - 1 , 1);
                var dateEnd = new Date(year , month - 1 , daysCount);
                //得到天数的开始和结束是星期几
                var weekStart = dateStart.getDay();
                var weekEnd = dateEnd.getDay();
                //得到画出来的日历中空白的天数
                var dayLeft = weekStart + 6 - weekEnd;
                //得到总的天数
                var monthDaysAll = daysCount + dayLeft;
                //得到有几行
                var rows = monthDaysAll / 7;
                //画出标题
                //大的div
                var bigDiv = document.createElement('DIV');
                bigDiv.className = 'calendar';
                //添加title
                var titleDiv = document.createElement('DIV');
                titleDiv.className = 'title';
                /*
                text-align:center;
                border:black 3px double;
                width:350px;
                */
                var textTitle = getMonthName(month);
                titleDiv.appendChild(document.createTextNode(textTitle + ' , ' + year));
                titleDiv.style.textAlign = 'center';
                titleDiv.style.border = 'double 3px black';
                titleDiv.style.width = '350px';
                //添加到大的里面
                bigDiv.appendChild(titleDiv);
                //开始添加第一行
                var count = 0 ;
                var tmpDiv = null;
                for(var i = 0 ; i < monthDaysAll ; i++) {
                    if(i % 7 == 0) {
                        tmpDiv = document.createElement('DIV');
                        tmpDiv.className = 'line';
                        bigDiv.appendChild(tmpDiv);
                    }
                    var span = document.createElement('SPAN');
                    /*
                        width : 50px;
                        border : solid double 3px;
                        margin:0px;
                        padding:0px;
                        text-align:center;
                    */
                    if(i < weekStart) {
                        span.innerHTML = '&nbsp;';
                    } else if(i > (weekStart + daysCount - 1)) {
                        span.innerHTML = '&nbsp;';
                    } else {
                        span.innerHTML = (i + 1 - weekStart) + '';
                    }
                   
                    span.style.display = 'inline-block';
                    span.style.width = '50px';
                    span.style.border = 'double 3px black';
                    span.style.margin = '0px';
                    span.style.padding = '0px';
                    span.style.textAlign = 'center';
                    tmpDiv.appendChild(span);
                }
                bigDiv.appendChild(document.createElement('BR'));
                document.body.appendChild(bigDiv);
            }
            function getDayCount(year , month) {
                var day = 0;
                switch(month) {
                    case 1:
                    case 3:
                    case 5:
                    case 7:
                    case 8:
                    case 10:
                    case 12:
                        day = 31;
                        break;
                    case 4:
                    case 6:
                    case 9:
                    case 11:
                        day = 30;
                        break;
                    case 2:
                        if(((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)) {
                            day = 29;
                            break;
                        }else {
                            day = 28;
                            break;
                        }
                }
                return day;
            }
            /*
                月份:January一月,February二月,March三月,April四月,May五月,June六月,July七月,August八月,September九月,October十月,Nevember十一月,December十二月.
            */
            function getMonthName(month) {
                switch(month) {
                    case 1:
                        return 'January';
                    case 2:
                        return 'February';
                    case 3:
                        return 'March';
                    case 4:
                        return 'April';
                    case 5:
                        return 'May';
                    case 6:
                        return 'June';
                    case 7:
                        return 'July';
                    case 8:
                        return 'August';
                    case 9:
                        return 'September';
                    case 10:
                        return 'October';
                    case 11:
                        return 'November';
                    case 12:
                        return 'December';
                }
            }
           
            function drawYear(year) {
                for(var i = 1 ; i <= 12 ; i++) {
                    createCalendar(year , i);
                }
            }
            drawYear(2009);
        </script>
    </body>
</html>

分享到:
评论

相关推荐

    设置span宽度高度的方法

    当我们需要设置 span 元素的宽度和高度时,需要使用 CSS 样式来实现。 首先,让我们来了解为什么 span 元素的宽度和高度不能直接设置。根据 HTML 规范,span 元素是一个内联元素,它的宽度和高度是根据其内容的宽度...

    mozilla书和开发手册

    在开发Mozilla相关项目时,了解XUL是非常关键的。XUL是一种XML语言,用于定义用户界面,它允许开发者创建与操作系统无关的图形用户界面。JavaScript则作为主要的脚本语言,用于实现交互逻辑。此外,XBL使得开发者...

    适用于任何浏览器的js日历代码

    本文将深入探讨如何使用JavaScript(特别是jQuery库)来创建一个兼容各种浏览器的日历代码,包括IE、Opera、Safari、Firefox和Mozilla。 首先,JavaScript(简称JS)是一种轻量级的脚本语言,广泛应用于网页动态...

    org.mozilla.javascript-1.7.2.jar

    在Java开发中,JavaScript引擎的使用日益广泛,其中Mozilla的Rhino引擎是备受开发者青睐的一款。本文将围绕"org.mozilla.javascript-1.7.2.jar"这个资源包,详细讲解其功能、原理以及在实际开发中的应用。 首先,...

    org.mozilla.javascript-1.7.2.jar.zip

    《深入解析Mozilla JavaScript引擎:org.mozilla.javascript-1.7.2.jar.zip详解》 JavaScript,作为互联网上最广泛使用的脚本语言,其在Web开发中的地位不可动摇。而Mozilla的JavaScript实现,以其强大的功能和良好...

    mozilla_源码编译简介

    ### Mozilla源码编译详解 #### 一、引言 Mozilla 是一款开源浏览器软件,它不仅支持多种操作系统,还提供了一个强大的开发平台。对于开发者来说,掌握 Mozilla 的源码编译流程至关重要。本文将详细介绍 Mozilla ...

    Mozilla Developer Center 离线版 电子书

    本电子书为MDC(Mozilla Developer Center)http://developer.mozilla.org/的离线浏览版,共收录网页计4143页,包括AJAX,CSS,DOM,HTML,Javascript,NSS,RDF,RSS,SVG,XBL,XForms,XML,XML Web Services,...

    基于 Mozilla 的扩展开发

    在开发扩展时,确保遵守 Mozilla 的安全和隐私指南至关重要。这包括避免注入恶意代码、获取不必要的用户数据,以及遵循正确的权限请求策略。 ### 6. 最佳实践 - **模块化编程**: 使用模块化组织代码,提高可读性...

    通过MOZILLA的javascript引擎(SpiderMonkey)执行js代码

    在`test111.aps`、`test111.clw`、`test111Dlg.cpp`、`test111.cpp`、`StdAfx.cpp`等文件中,你可以看到一个典型的VC++项目结构,它们包含了工程设置、类定义、对话框处理以及主程序的实现。在这些文件中,你需要...

    org.mozilla.universalchardet.jar

    org.mozilla.universalchardet.jar org.mozilla.universalchardet.jar

    mozilla检测网页编码的jar包

    标题中的“mozilla检测网页编码的jar包”实际上指的是Mozilla开源项目中的一个子模块,用于识别网页的字符编码。这个jar包并非来自Mozilla浏览器的核心代码,而可能是Mozilla Foundation或相关的开源社区开发的一个...

    IE和Mozilla中脚本兼容性汇总

    以下是一些关于IE和Mozilla中脚本兼容性的关键点: 1. **事件对象的访问**: - 在IE中,事件对象`event`会自动作为函数参数传递,如`doIt() { alert(event); }`。 - Mozilla不提供默认的全局`event`对象,需要在...

    moz-git-tools:Mozilla上使用Git的工具

    为了进行此设置,请将此存储库克隆到某个地方,运行git submodule init ,然后运行git submodule init git submodule update命令,然后将您的克隆添加到$ PATH中。 有些命令需要python2 。 如果在Windows上使用...

    mozilla help.rar

    Mozilla Firefox 是一款非常流行的开源网络浏览器,以其安全性、速度和用户隐私保护而闻名。这款浏览器由Mozilla基金会维护,其核心是Gecko渲染引擎,能够解析并显示网页内容。"mozilla help.rar" 这个压缩包文件...

    兼容性非常好的js日历控件

    "兼容性非常好的js日历控件"是一个专为提高用户体验而设计的解决方案,它强调了在不同浏览器之间的广泛兼容性,包括Internet Explorer(IE)、Google Chrome以及Mozilla Firefox等主流浏览器。这意味着开发者可以在...

    Readabilityjs一个mozilla的网页主体内容解析库

    Readability.js是由Mozilla开发的一个强大的JavaScript库,专门用于从复杂的网页结构中提取主要内容,提高文章的可读性。这个库的出现是为了解决现代网页设计中常常出现的问题:过多的广告、装饰元素以及不清晰的...

    mozilla xbl基本用法示例

    Mozilla XBL(XML Binding Language)是一种强大的技术,用于在Firefox和其他基于Gecko的浏览器中创建可重用的用户界面组件。XBL允许开发者通过XML来定义元素的外观和行为,结合了XHTML、CSS和JavaScript的功能,...

    梅花雨日历控件3.0(修改支持Firefox)

    在部署这个修复版本时,应确保替换原有项目中的日历控件文件,并且在实际环境中进行测试,以确认问题已经得到有效解决。 总的来说,修复梅花雨日历控件3.0在Firefox上的兼容性问题,涉及到了对JavaScript、CSS、DOM...

    Mozilla Thunderbird v60.8.0 官方中文版.zip

    Mozilla Thunderbird中文名“雷鸟”是从Mozilla Application Suite独立出来的电子邮件客户端软件。软件继承了Mozilla邮件组件的功能并行重新设计,可整合多个网络邮箱于一体,随时都能拉取邮件到本地处理,或者随时...

    mozilla内核压缩包

    Mozilla内核还包括XULRunner框架,这是一个运行时环境,支持基于XML的用户界面语言XUL(XML User Interface Language)来构建跨平台的应用程序。Firefox和Thunderbird等Mozilla应用就是用XUL构建的。 **3. 安全与...

Global site tag (gtag.js) - Google Analytics