ホームページ ウェブフロントエンド htmlチュートリアル Web デザインにおける Div+CSS レイアウトの適用_html/css_WEB-ITnose

Web デザインにおける Div+CSS レイアウトの適用_html/css_WEB-ITnose

Jun 24, 2016 pm 12:30 PM

一、页面布局与规划

  好久没有认真写点东西了,想起最近这些时间经常有朋友问到我有关于DIV+CSS布局的问题,其实归根结底还是由于没有入门造成的。那么接下来的这篇文章就带领大家入门吧...

  在网页制作中,有许多的术语,例如:CSS、HTML、DHTML、XHTML等等。在下面的文章中我们将会用到一些有关于HTML的基本知识,而在你学习这篇入门教程之前,请确定你已经具有了一定的HTML基础。下面我们就开始一步一步使用DIV+CSS进行网页布局设计吧。

所有的设计第一步就是构思,构思好了,一般来说还需要用PhotoShop或FireWorks(以下简称PS或FW)等图片处理软件将需要制作的界面布局简单的构画出来,以下是我构思好的界面布局图。

        下面,我们需要根据构思图来规划一下页面的布局,仔细分析一下该图,我们不难发现,图片大致分为以下几个部分:
  1、顶部部分,其中又包括了LOGO、MENU和一幅Banner图片;
  2、内容部分又可分为侧边栏、主体内容;
  3、底部,包括一些版权信息。
  有了以上的分析,我们就可以很容易的布局了,我们设计层如下图: 

        根据上图,我再画了一个实际的页面布局图,说明一下层的嵌套关系,这样理解起来就会更简单了。 

        DIV结构如下:
  │body {} /*这是一个HTML元素,具体我就不说明了*/
  └#Container {} /*页面层容器*/
     ├#Header {} /*页面头部*/
     ├#PageBody {} /*页面主体*/
     │ ├#Sidebar {} /*侧边栏*/
     │ └#MainBody {} /*主体内容*/
     └#Footer {} /*页面底部*/
  至此,页面布局与规划已经完成,下一节我们要做的就是开始书写HTML代码和CSS。 


二、写入整体层结构与CSS

  接下来我们在桌面新建一个文件夹,命名为“DIV+CSS布局练习”,在文件夹下新建两个空的记事本文档,输入以下内容:




无标题文档



  这是XHTML的基本结构,将其命名为index.htm,另一个记事本文档则命名为css.css。

  下面,我们在标签对中写入DIV的基本结构,代码如下:


  
  

    
    

    

  

  

将来的にコードを読みやすくするために、css.css ファイルを開いて CSS 情報を記述します。
/*基本情報*/
body {font:12px Tahoma;margin: 0px;text-align:center;background:#FFF;}

/*ページレイヤーコンテナ*/
#container {width:100%}

/*ページヘッダー*/
#Header {width:800px;margin :0 auto;height:100px;background:#FFCC99}

/*ページ本文*/
#PageBody {width:800px;margin:0 auto;height:400px;background:# CCFF00}

/*Pagebottom*/ /
#Footer {width:800px;margin:0 auto;height:50px;background:#00FFFF}

今回は上記のファイルを保存し、ブラウザで開きます。これはフレーム化されたページです。
上記の CSS の説明について (詳しくは、オンラインでダウンロードできる CSS2.0 の中国語マニュアルを参照してください):

1. コメントの良い習慣を身につけてください。これは非常に重要です

2. Body は、 HTML 要素とページ内のすべてのコンテンツは、このタグ ペア内に記述する必要があります。これ以上は説明しません。

3. よく使用される CSS コードの意味を説明します。
font:12px Tahoma;
ここでは略語が使用されています。完全なコードは次のようになります: font-size:12px; font-family:Tahoma; フォント サイズが 12 ピクセルで、フォントが Tahoma 形式であることを示します。

margin-top:0px; margin-right:0px;margin-bottom:0px;margin-left:0px

または
margin:0px 0px 0px 0px
順序は上/右/下/左です。 margin:0 (略語)

とも書きます。自動調整の場合は、
今後使用するパディング属性はマージンと多くの類似点がありますが、パラメータは同じです。

しかし、マージンは外側の距離であり、パディングは内側の距離です。


text-align:center
テキストの配置を左揃え、右揃え、中央揃えに設定できます ここでは中央揃えに設定しています。

background:#FFFF
背景色を白に設定します。ここでの色は、完全な色は、background:#FFFFFF となります。

背景は、指定したレイヤーを背景色と背景画像で埋めるために使用できます。将来的には次の形式を使用します。

Background:#ccc url('bg.gif') 左上 no-repeat; を示します。 #CCC(グレースケールカラー)でレイヤー全体を塗りつぶし、背景画像としてbg.gifを使用します。
top/right/left/bottom/center

背景画像の位置を指定するために使用され、それぞれ、top/right/bottom/left/center を使用することもできます

background:url('bg.gif') 20px 100px を表します。 X シート マークは 20 ピクセル、Y 座標は 100 ピクセルの正確な位置決めです
Repeat/no-repeat/repeat-x/repeat-y
それぞれ、レイヤー全体を塗りつぶす/塗りつぶさない/X に沿って塗りつぶすことを意味します。 Y 軸に沿った軸/塗りつぶし。

高さ/幅/色
それぞれ高さ(px)、幅(px)、フォントの色(HTMLカラーシステムテーブル)を表します。

4. ページを中央に配置するにはどうすればよいですか?
コードを保存すると、ページ全体が中央に表示されることがわかります。では、ページが中央に表示されるのはなぜでしょうか。
#container で次の属性を使用したためです:
margin:0 auto;
前の手順によると、上下のマージンが 0、左右のマージンが自動なので、レイヤーは自動的に中央に配置されます。
ページを左側に表示したい場合は、デフォルトで左側に表示されるため、自動値をキャンセルしてください。

margin:autoを使うと、レイヤーを自動的に中央に配置することが簡単にできます。


5. ここでは、よく使用される CSS プロパティのみを紹介します。その他については、CSS2.0 の中国語マニュアルを参照してください。

三、页面顶部制作(1)

  当我们写好了页面大致的DIV结构后,我们就可以开始细致地对每一个部分进行制作了。

  在上一章中我们写入了一些样式,那些样式是为了预览结构而写入的,我们把css.css中的样式全部清除掉,重新写入以下样式代码:
程序代码
/*基本信息*/
body {font:12px Tahoma;margin:0px;text-align:center;background:#FFF;}
a:link,a:visited {font-size:12px;text-decoration:none;}
a:hover{}

/*页面层容器*/
#container {width:800px;margin:10px auto}
  样式说明:

  a:link,a:visited {font-size:12px;text-decoration:none;}
  a:hover {}

  这两项分别是控制页面中超链接的样式,具体我就不说明了,请大家参阅手册。

  #container {width:800px;margin:10px auto}

  指定整个页面的显示区域。
  width:800px指定宽度为800像素,这里根据实际所需设定。
  margin:10px auto,则是页面上、下边距为10个像素,并且居中显示。
  上一章中我们讲过,对层的margin属性的左右边距设置为auto可以让层居中显示。

  接下来,我们开始制作TOP部分,TOP部分包括了LOGO、菜单和Banner,首先我们要做的就是对设计好的图片进行切片,以下是在FW下完成的切片:

        我将TOP部分切片为两部分,第一部分包括了LOGO和一条横线。由于LOGO图片并没有太多的颜色,这里我于是将这一部分保存为GIF格式,调色板选择为精确,选择Alpha透明度,色版为白色(此处颜色应与背景色相同),导出为logo.gif,图像宽度为800px。

  到这里,有的朋友就说了,* 为什么要使用GIF格式?使用JPEG不是更好吗?
  因为GIF格式的图片文件更小,这样能使页面载入的速度更快,当然使用此格式之前必须确定图片并没有使用太多的颜色,当我们使用了GIF格式时,从肉眼上并不能看出图片有什么太大的变化,因此这是可行的。

  * 接下来的Banner部分还能使用GIF格式吗?
  答案是不能,因为Banner部分是一个细致的图片,如果使用GIF格式颜色会有太大的损失,所以必须使用JPEG格式,将文件导出为banner.jpg。

  * 合理的切片是非常之重要的,因为切片的方法正确与否决定了CSS书写的简易程度以及页面载入速度。

  切好片后,我们还需要对TOP部分进行分析并将DIV结构写入Header中代码如下:




  为什么要这么写呢,因为对菜单使用列表
  • 形式,可以在以后方便对菜单定制样式。

      而为什么要添加以下代码呢?
      

  •   插入这一段代码是可以方便地对菜单选项之间插入一些分隔样式,例如预览图中的竖线分隔。

      然后我们在css.css中再写入以下样式:
    /*页面头部*/
    #header {background:url(logo.gif) no-repeat}

      样式说明:
      #header {background:url(logo.gif) no-repeat}
      给页面头部分加入一个背景图片LOGO,并且不作填充。

      这里,我们没有指定header层的高度,为什么不指定呢?

      因为header层中还有菜单和banner项,所以层的高度暂时是未知的,而层的属性又可以让层根据内容自动设定调整,因此我们并不需要指定高度。

      * 接下来,我们开始制作菜单,留到下一章,教程中相关文件请到下一章下载!

    三、页面顶部制作(2)----使用列表

  • 制作菜单

      开始此节的学习前,请确认你已经参照之前的几节内容写入了DIV、CSS到index.htm和css.css文件中。
      这一节我将告诉大家如何用列表
  • 来制作菜单。


    上記はこの部分の 2 つの HTML 要素
      および
    • については、その主な機能を参照してください。 HTMLで何らかの情報をリスト形式で表示することです。

      HTML で id="divID" として定義されている場合、HTML で class="divID" として定義されている場合、対応する設定構文は #divID{} になります。 CSS の対応する設定構文は .divID です。
      id="divID" レイヤーに が含まれる場合、CSS 内のこの img に対応する設定構文は #divID img {} である必要があります。同様に、それが class=" divID" に含まれる場合。このレイヤーでは、設定構文は .divID img {} である必要があります。これを明確に理解していただければ幸いです。
      さらに、table、tr、td、th、form、img、input...など、HTML内のすべての要素を定義できます。 CSSで設定したい場合は、要素の名前を直接記述するだけで追加できます一対の中括弧 {}。すべての CSS コードは中括弧 {} 内に記述する必要があります。
      上記の紹介によると、最初にCSS.CSSで次のコードを書きます:#menu ul {list-style:none:0px;} :none;margin:0px;}
      list-style:none, この文は、リストの前のポイントが必要ないので、それらのポイントをキャンセルします。
      Margin:0px、この文はULのインデントを削除するものです。これにより、リストの内容がすべてインデントされなくなります。
      #menu ul li {float:left;}
      ここでの float:left の左右は同じ行に内容を表示するため、float 属性(float)を使います。このステップでは、最初に次のコンテンツを追加することをお勧めします:
      #menu ul {list-style:none;margin:0px;}
      20 ピクセルの距離(左: 10px、右: 10px)、プレビュー効果は次のとおりです:

      プロトタイプが出てきたので、メニューの位置を修正し、コードを次のように変更しましょう:
      #menu {padding: 20px 20px 0 0}
      /*padding:20px 20px 0 0 を使用してメニューの位置を固定します*/
      #menu ul {float:right; 右側*/
      #menu ul li {float:left;margin:0 10px

      この時点で位置は決まっているのですが、概念図ではメニュー選択肢の間に縦線が入っているのですがどうすればよいでしょうか? 忘れないでください。すでに空の が残されています。垂直線を追加したい場合にのみ使用してください。

      上記の方法に従って、次のコードを追加します:
      .menuDiv {width:1px;height:28px;background:#999}

      保存してプレビューすると、縦線が出ていますか?このコードについては多くは言いませんが、簡単に理解できるはずです。

      ただし、メニュー オプションのテキストは上部にあるため、次のコードに変更します:

      #menu ul li {float:left;margin:0 10px;display:block;line-height:28px}

      display:block ;line-height:28px についてはマニュアルを参照してください。詳細は説明しません。

      基本的に効果は得られています。あとは、メニューのハイパーリンク スタイルを変更し、次のコードを css.css に追加するだけです。 #menu ul li a:link,#menu ul li a:visited {font- weight:bold ;color:#666}
      #menu ul li a:hover{}
      これについてはこれ以上言いません。これ以上言うことはありません。最終的な効果は次のとおりです。

      このセクションは終了ですちなみに、私は皆さんに資料を提供します:


      このウェブサイトの声明
      この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

      ホット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ヘンタイを無料で生成します。

      ホットツール

      メモ帳++7.3.1

      メモ帳++7.3.1

      使いやすく無料のコードエディター

      SublimeText3 中国語版

      SublimeText3 中国語版

      中国語版、とても使いやすい

      ゼンドスタジオ 13.0.1

      ゼンドスタジオ 13.0.1

      強力な PHP 統合開発環境

      ドリームウィーバー CS6

      ドリームウィーバー CS6

      ビジュアル Web 開発ツール

      SublimeText3 Mac版

      SublimeText3 Mac版

      神レベルのコード編集ソフト(SublimeText3)

      公式アカウントのキャッシュの更新の難しさ:バージョンの更新後のユーザーエクスペリエンスに影響を与える古いキャッシュを回避する方法は? 公式アカウントのキャッシュの更新の難しさ:バージョンの更新後のユーザーエクスペリエンスに影響を与える古いキャッシュを回避する方法は? Mar 04, 2025 pm 12:32 PM

      公式アカウントのWebページはキャッシュを更新します。これはシンプルでシンプルで、ポットを飲むのに十分な複雑です。あなたは公式のアカウントの記事を更新するために一生懸命働きましたが、ユーザーはまだ古いバージョンを開くことができますか?この記事では、この背後にあるtwist余曲折と、この問題を優雅に解決する方法を見てみましょう。それを読んだ後、さまざまなキャッシュの問題に簡単に対処でき、ユーザーが常に新鮮なコンテンツを体験できるようになります。最初に基本について話しましょう。それを率直に言うと、アクセス速度を向上させるために、ブラウザまたはサーバーはいくつかの静的リソース(写真、CSS、JSなど)やページコンテンツを保存します。次回アクセスするときは、もう一度ダウンロードすることなく、キャッシュから直接検索できます。自然に高速です。しかし、このことは両刃の剣でもあります。新しいバージョンはオンラインです、

      HTML5フォーム検証属性を使用してユーザー入力を検証するにはどうすればよいですか? HTML5フォーム検証属性を使用してユーザー入力を検証するにはどうすればよいですか? Mar 17, 2025 pm 12:27 PM

      この記事では、ブラウザのユーザー入力を直接検証するために、必要、パターン、MIN、MAX、および長さの制限などのHTML5フォーム検証属性を使用して説明します。

      HTML5のクロスブラウザー互換性のベストプラクティスは何ですか? HTML5のクロスブラウザー互換性のベストプラクティスは何ですか? Mar 17, 2025 pm 12:20 PM

      記事では、HTML5クロスブラウザーの互換性を確保するためのベストプラクティスについて説明し、機能検出、プログレッシブエンハンスメント、およびテスト方法に焦点を当てています。

      WebページのPNG画像にストローク効果を効率的に追加する方法は? WebページのPNG画像にストローク効果を効率的に追加する方法は? Mar 04, 2025 pm 02:39 PM

      この記事では、CSSを使用したWebページへの効率的なPNG境界追加を示しています。 CSSはJavaScriptやライブラリと比較して優れたパフォーマンスを提供し、微妙または顕著な効果のために境界幅、スタイル、色を調整する方法を詳述していると主張しています

      < datalist>の目的は何ですか 要素? < datalist>の目的は何ですか 要素? Mar 21, 2025 pm 12:33 PM

      この記事では、HTML< Datalist>について説明します。オートコンプリートの提案を提供し、ユーザーエクスペリエンスの改善、エラーの削減によりフォームを強化する要素。

      < Progress>の目的は何ですか 要素? < Progress>の目的は何ですか 要素? Mar 21, 2025 pm 12:34 PM

      この記事では、HTML< Progress>について説明します。要素、その目的、スタイリング、および< meter>との違い要素。主な焦点は、< Progress>を使用することです。タスクの完了と< Meter> statiの場合

      HTML5< time>を使用するにはどうすればよいですか 日付と時刻を意味的に表す要素? HTML5< time>を使用するにはどうすればよいですか 日付と時刻を意味的に表す要素? Mar 12, 2025 pm 04:05 PM

      この記事では、html5< time>について説明します。セマンティックデート/時刻表現の要素。 人間の読み取り可能なテキストとともに、マシンの読みやすさ(ISO 8601形式)のDateTime属性の重要性を強調し、Accessibilitを増やします

      < meter>の目的は何ですか 要素? < meter>の目的は何ですか 要素? Mar 21, 2025 pm 12:35 PM

      この記事では、html< meter>について説明します。要素は、範囲内でスカラーまたは分数値を表示するために使用され、Web開発におけるその一般的なアプリケーション。それは差別化< Meter> < Progress>およびex

      See all articles