検索
ホームページウェブフロントエンドhtmlチュートリアルIE8_html/css_WEB-ITnose との DIV+CSS 互換性の問題

CSS技巧:

1.div的垂直居中问题

     vertical-align:middle; 将行距增加到和整个DIV一样高 line-height:200px; 然后插入文字,就垂直居中了。缺点是要控制内容不要换行 

2. margin加倍的问题    

     设置为float的div在ie下设置的margin会加倍。这是一个ie6都存在的bug。解决方案是在这个div里面加上display:inline;   

     例如: 相应的css为 #IamFloat{float:left; margin:5px;/*IE下理解为10px*/display:inline;/*IE下再理解为5px*/} 

3.浮动ie产生的双倍距离    

     #box{ float:left; width:100px; margin:0 0 0 100px; //这种情况之下IE会产生200px的距离 display:inline; //使浮动忽略}   

     这里细说一下block与inline两个元素:block元素的特点是,总是在新行上开始,高度,宽度,行高,边距都可以控制(块元素);Inline 元素的特点是,和其他元素在同一行上,不可控制(内嵌元              素);     #box{ display:block; //可以为内嵌元素模拟为块元素 display:inline; //实现同一行排列的效果 diplay:table;   

4 IE与宽度和高度的问题

     IE 不认得min-这个定义,但实际上它把正常的width和height当作有min的情况来使。这样问题就大了,如果只用宽度和高度,正常的浏览器里这两个值就不会变,

     如果只用min-width和min-height的话,IE下面根本等于没有设置宽度和高度。     比如要设置背景图片,这个宽度是比较重要的。要解决这个问题,

     可以这样:     #box{ width: 80px; height: 35px;}html>body #box{ width: auto; height: auto; min-width: 80px; min-height: 35px;}  

5.页面的最小宽度

      min -width是个非常方便的CSS命令,它可以指定元素最小也不能小于某个宽度,这样就能保证排版一直正确。但IE不认得这个,而它实际上把width当 做最小宽度来使。为了让这一命令         在IE上也能用,可以把一个

放到 标签下,然后为div指定一个类, 然后CSS这样设计:   

   #container{ min-width: 600px; width:e-xpression            (document.body.clientWidth

   但第2行的width使用了      Javascript,这只有IE才认得,这也会让你的HTML文档不太正规。它实际上通过Javascript的判断来实现最小宽度。

6.DIV浮动IE文本产生3象素的bug

     左边对象浮动,右边采用外补丁的左边距来定位,右边对象内的文本会离左边有3px的间距.    

     #box{ float:left; width:800px; border:1px solid #E00;}

     #left{ float:left; width:50%;border:1px solid #E00;}

     #right{ width:50%;border:1px solid #E00;}   

     *html #left{ margin-right:-3px; //这句是关键}    

  

  

  

  

 

7.IE捉迷藏的问题

     当div应用复杂的时候每个栏中又有一些链接,DIV等这个时候容易发生捉迷藏的问题。    

     有些内容显示不出来,当鼠标选择这个区域是发现内容确实在页面。

     解决办法:对#layout使用line-height属性或者给#layout使用固定高和宽。页面结构尽量简单。 

8.float的div闭合;清除浮动;自适应高度;  

     ① 例如:这里的NOTfloatC并不希望继续平移,而是希望往下排。

     (其中floatA、floatB的属性已经设置为 float:left;)    这段代码在IE中毫无问题,问题出在FF。原因是NOTfloatC并非float标签,必须将float标签闭合。

     在 之间加上 这个div一定要注意位置,而且必须与两个具有float属性的div同级,之间不能存在嵌套关系,

     否则会产生异常。 并且将clear这种样式定义为为如下即可: .clear{ clear:both;}   

     ②作为外部 wrapper 的 div 不要定死高度,为了让高度能自动适应,要在wrapper里面加上overflow:hidden; 当包含float的 box的时候,高度自动适应在IE下无效,

     这时候应该触发IE的layout私有属性(万恶的IE啊!)用zoom:1;可以做到,这样就达到了兼容.

      例如某一个wrapper如下定义:.colwrapper{ overflow:hidden; zoom:1; margin:5px auto;}  

     ③对于排版,我们用得最多的css描述可能就是float:left.有的时候我们需要在n栏的float div后面做一个统一的背景,譬如:

    

比如我们要将page的背景设置成蓝色,以达到所有三栏的背景颜色是蓝色 的目的,但是我们会发现随着left center right的向下

       拉长,而 page居然保存高度不变,问题来了,原因在于page不是float属性,而我们的page由于要居中,不能设置成float,所以我们应该这样解决   

    

   
   
   
   
  
   
  

     再嵌入一个float left而宽度是100%的DIV解决之  

     ④万能float 闭合(非常重要!)     关于 clear float 的原理可参见 [How To Clear Floats Without Structural Markup],将以下代码加入Global CSS 中,给需要闭合的div加上

class="clearfix" 即可,屡试不爽.     /* Clear Fix */   

.clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden; }   

.clearfix { display:inline-block; }     /* Hide from IE Mac */    

.clearfix {display:block;}     /* End hide from IE Mac */     /* end of clearfix */   

或者这样设置:

.hackbox{ display:table; //将对象作为块元素级的表格显示} 

11.高度不适应

     高度不适应是当内层对象的高度发生变化时外层高度不能自动进行调节,特别是当内层对象使用margin 或paddign 时。   

     例:#box {background-color:#eee; } #box p {margin-top: 20px;margin-bottom: 20px; text-align:center; }

p对象中的内容

解決策: P オブジェクトの上下に 2 つの空の div オブジェクトを追加します: .1{height:0px;overflow:hidden;} または、DIV に border 属性を追加します。

12. IE6 で画像の下に隙間があるのはなぜですか?

このバグを解決するには、html のレイアウトを変更するか、img を display:block に設定するか、vertical-align 属性を設定することができます。

13. テキストとテキスト入力ボックスを配置する方法

1. 重複していますか? ID は Web 標準では許可されません。たとえば、div は 2 回繰り返すことはできません。class は、理論的には無限に繰り返すことができるクラスを定義するため、複数の参照を必要とする定義で使用できます。

2. 属性の優先順位。 ID の優先順位はクラスよりも高くなります。上記の例を参照してください

3. JS などのクライアント側スクリプトに便利で、ページ内のオブジェクトに対してスクリプト操作を実行する場合、そのオブジェクトの ID を定義できます。それ以外の場合は、ページ要素を走査して特定の属性を指定することしかできません。これは比較的時間の無駄です。

は単純な ID とは程遠いです。

長さが長くなると、 ;

;

4. カーソル指カーソル

カーソル: ポインターは IE FF で同時にカーソルの指の形状を表示できます

5.UL のパディングとマージン

ul タグにはデフォルトでパディング値がありますFF、ただし IE のみ Margin にデフォルトで値があるため、最初に ul{margin:0;padding:0;} を定義することでほとんどの問題を解決できます

6. FORM タグ

このタグは、IE では自動的にマージンを追加します。 FFでは中央のマージンは0です。したがって、表示に一貫性を持たせたい場合は、CSSでマージンとパディングを指定するのが最善です。上記の2つの問題に対応して、私は通常、最初にこのスタイルをCSSで使用します。 ,form{margin:0 ;padding:0;} 定義は無効なので、後で問題が発生することはありません

7. BOX モデルの解釈の不一致

FF と IE の BOX モデルの解釈は不一致です。解決策: div{ margin:30px! important;margin:28px;} これら 2 つのマージンの順序は、IE では認識できませんが、他のブラウザでは認識できることに注意してください。実際、IE では次のように解釈されます。 div {maring:30px;margin:28px} が繰り返し定義されている場合、最後の定義に従って実行されるため、単に margin:xx px! important; と書くことはできません。 box{ width:600px; / /ie6.0 の場合 - width:500px; //ff+ie6.0 の場合} #box{ width:600px!重要 //ff の場合 width:600px; width /**/:500px; //ie6.0-}

8. 属性セレクター (これは互換性があるとみなされません。CSS を非表示にする際のバグです)

p[id]{}div[id]{} これはIE6.0 および IE6.0 未満のバージョンでは、FF と OPera の機能はまだ異なりますが、サブセレクターの範囲は形式的には狭く、属性セレクターの範囲は比較的広くなります。 ,

p[id] では、id を持つすべての p タグが同じスタイルになります

9 最も無慈悲な方法 - !重要;

本当に方法がない場合。いくつかの詳細な問題を解決する場合は、このメソッドを使用できます。「!重要」の FF が最初に自動的に解析されますが、IE はそれを無視します。 ) no-repeat 0px 0px ! important; /*FF のスタイル */

background:url(/res/images/up/tab1.gif) no-repeat 1px 0px; /* IE 用のスタイル */} 文 xxxx !重要 に注意してください。別の文に置く必要があります 上で述べたとおりです

10. IE、FF のデフォルト値の問題

たぶん、なぜ IE と FF で別々の CSS を書かなければならないのか、なぜ IE がこんなに頭の痛いのかについて不満を抱いているかもしれません。 、そして CSS を書いているときに、そのいまいましい M$ IE を呪ってください。実際、CSS 標準サポートの観点から見ると、IE は私たちが思っているほど悪くありません

くそー、重要なのは、IE のデフォルト値とFF は異なります。このスキルをマスターすると、CSS を FF と IE に互換させることはそれほど難しくありません。おそらく、単純な CSS の場合は、「! important」を完全に削除できます。ブラウザが Web ページを表示するとき、Web ページの CSS スタイル シートに基づいて表示方法が決定されることは誰もが知っていますが、スタイル シート内のすべての要素を詳細に記述する必要はありません。その必要はありません。そのため、記述されていない

属性については、CSS で色を指定しない場合、ブラウザは組み込みのデフォルトのメソッドを使用して表示します。または表示するシステムカラー、div または他の要素の背景 (CSS で指定されていない場合)

他の未定義のスタイルについては、ブラウザーによって白または透明に設定されます。したがって、FF と IE でさまざまな表示が異なる根本的な理由は、デフォルトの表示が異なるためです。このデフォルトのスタイルをどのように表示するかについては、 w3

に対応する規格があるかどうかはわかっているため、対応する規格はありません。この点に関しては IE を責めないでください。

11. FF のテキストはコンテナの高さを拡張できないのはなぜですか?

    标准浏览器中固定高度值的容器是不会象IE6里那样被撑开的,那我又想固定高度,又想能被撑开需要怎样设置呢?办法就是去掉height设置min-height:200px;  

   这里为了照顾不认识min-height的IE6 可以这样定义: { height:auto!important; height:200px; min-height:200px; }

12.FireFox下如何使连续长字段自动换行

    众所周知IE中直接使用 word-wrap:break-word 就可以了, FF中我们使用JS插入的方法来解决

      word-wrap:break-word;       border:1px solid red; } -->

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

     /*

       function toBreakWord(el, intLen){   var ōbj=document.getElementById(el);       var strContent=obj.innerHTML;       var strTemp=""; 

     while(strContent.length>intLen){   strTemp+=strContent.substr(0,intLen)+"";   strContent=strContent.substr(intLen,strContent.length);       }

      strTemp+=""+strContent;       obj.innerHTML=strTemp; } if(document.getElementById    &&    !document.all)    toBreakWord("ff", 37); /* ]]> */

īpt>

13.为什么IE6下容器的宽度和FF解释不同呢

    

    

    

    

    

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
HTML対CSS対JavaScript:比較概要HTML対CSS対JavaScript:比較概要Apr 16, 2025 am 12:04 AM

Web開発におけるHTML、CSS、およびJavaScriptの役割は次のとおりです。HTMLはコンテンツ構造を担当し、CSSはスタイルを担当し、JavaScriptは動的な動作を担当します。 1。HTMLは、セマンティクスを確保するためにタグを使用してWebページの構造とコンテンツを定義します。 2。CSSは、セレクターと属性を介してWebページスタイルを制御して、美しく読みやすくします。 3。JavaScriptは、動的でインタラクティブな関数を実現するために、スクリプトを通じてWebページの動作を制御します。

HTML:それはプログラミング言語か何か他のものですか?HTML:それはプログラミング言語か何か他のものですか?Apr 15, 2025 am 12:13 AM

htmlisnotaprogramminglanguage; itisamarkuplanguage.1)htmlStructuresandformatswebcontentusingtags.2)ItworkswithcsssssssssdjavascriptforInteractivity、強化を促進します。

HTML:Webページの構造の構築HTML:Webページの構造の構築Apr 14, 2025 am 12:14 AM

HTMLは、Webページ構造の構築の基礎です。 1。HTMLは、コンテンツ構造とセマンティクス、および使用などを定義します。タグ。 2. SEO効果を改善するために、などのセマンティックマーカーを提供します。 3.タグを介したユーザーの相互作用を実現するには、フォーム検証に注意してください。 4. JavaScriptと組み合わせて、動的効果を実現するなどの高度な要素を使用します。 5.一般的なエラーには、閉じられていないラベルと引用されていない属性値が含まれ、検証ツールが必要です。 6.最適化戦略には、HTTP要求の削減、HTMLの圧縮、セマンティックタグの使用などが含まれます。

テキストからウェブサイトへ:HTMLの力テキストからウェブサイトへ:HTMLの力Apr 13, 2025 am 12:07 AM

HTMLは、Webページを構築するために使用される言語であり、タグと属性を使用してWebページの構造とコンテンツを定義します。 1)htmlは、などのタグを介してドキュメント構造を整理します。 2)ブラウザはHTMLを分析してDOMを構築し、Webページをレンダリングします。 3)マルチメディア関数を強化するなど、HTML5の新機能。 4)一般的なエラーには、閉じられていないラベルと引用されていない属性値が含まれます。 5)最適化の提案には、セマンティックタグの使用とファイルサイズの削減が含まれます。

HTML、CSS、およびJavaScriptの理解:初心者向けガイドHTML、CSS、およびJavaScriptの理解:初心者向けガイドApr 12, 2025 am 12:02 AM

webdevelopmentReliesOnhtml、css、andjavascript:1)htmlStructuresContent、2)cssStylesit、および3)Javascriptaddsinteractivity、形成、

HTMLの役割:Webコンテンツの構造HTMLの役割:Webコンテンツの構造Apr 11, 2025 am 12:12 AM

HTMLの役割は、タグと属性を使用してWebページの構造とコンテンツを定義することです。 1。HTMLは、読みやすく理解しやすいようなタグを介してコンテンツを整理します。 2。アクセシビリティとSEOを強化するには、セマンティックタグなどを使用します。 3. HTMLコードの最適化により、Webページの読み込み速度とユーザーエクスペリエンスが向上する可能性があります。

HTMLとコード:用語を詳しく見るHTMLとコード:用語を詳しく見るApr 10, 2025 am 09:28 AM

htmlisaspecifictypeofcodefocuseduructuringwebcontent

HTML、CSS、およびJavaScript:Web開発者に不可欠なツールHTML、CSS、およびJavaScript:Web開発者に不可欠なツールApr 09, 2025 am 12:12 AM

HTML、CSS、およびJavaScriptは、Web開発の3つの柱です。 1。HTMLは、Webページ構造を定義し、などなどのタグを使用します。2。CSSは、色、フォントサイズなどのセレクターと属性を使用してWebページスタイルを制御します。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター