ล่าสุดการพัฒนาเว็บบทเรียน
×

CSS เกี่ยวกับการสอน

CSS บ้าน CSS บทนำ CSS วากยสัมพันธ์ CSS ทำอย่างไร CSS สี CSS ภูมิหลัง CSS พรมแดน CSS อัตรากำไรขั้นต้น CSS การขยายความ CSS สูงกว้าง CSS ข้อความ CSS แบบอักษร CSS การเชื่อมโยง CSS รายการ CSS ตาราง CSS รูปแบบกล่อง ร่าง CSS การแสดงผล CSS CSS ความกว้างสูงสุด CSS ตำแหน่ง CSS ลอย CSS Inline-block CSS เป็นเส้นตรง CSS combinators CSS หลอกชั้น CSS องค์ประกอบหลอก CSS แถบนำทาง CSS เมนูแบบเลื่อนลง CSS คำแนะนำเครื่องมือ CSS แกลเลอรี่ภาพ CSS ภาพทึบ CSS ภาพแบบ Sprite CSS attr Selectors รูปแบบ CSS CSS เคาน์เตอร์

CSS3

CSS3 บทนำ CSS3 มุมโค้งมน CSS3 แสดงสินค้าชายแดน CSS3 ภูมิหลัง CSS3 สี CSS3 การไล่ระดับสี CSS3 เงา CSS3 ข้อความ CSS3 แบบอักษร CSS3 แปลง 2D CSS3 แปลง 3D CSS3 การเปลี่ยน CSS3 ภาพเคลื่อนไหว CSS3 ภาพ CSS3 ปุ่ม CSS3 การให้เลขหน้า CSS3 หลายคอลัมน์ CSS3 หน้าจอผู้ใช้ CSS3 กล่องขนาด CSS3 Flexbox CSS3 สื่อแบบสอบถาม CSS3 ตัวอย่าง MQ

CSS การออกแบบเว็บที่ตอบสนอง

การออกแบบเว็บที่ตอบสนอง แนะนำ การออกแบบเว็บที่ตอบสนอง วิวพอร์ต การออกแบบเว็บที่ตอบสนอง ตารางมุมมอง การออกแบบเว็บที่ตอบสนอง สื่อแบบสอบถาม การออกแบบเว็บที่ตอบสนอง ภาพ การออกแบบเว็บที่ตอบสนอง วิดีโอ การออกแบบเว็บที่ตอบสนอง กรอบ

CSS Examples

CSS ตัวอย่าง CSS ทดสอบ CSS ใบรับรอง

CSS References

CSS การอ้างอิง CSS selectors CSS ฟังก์ชั่น CSS หูอ้างอิง CSS Web Safe แบบอักษร CSS Animatable CSS หน่วย CSS PX-EM แปลง CSS สี CSS ค่าสี CSS ชื่อสี CSS3 สนับสนุนเบราว์เซอร์

 

CSSภาพแบบ Sprite


ภาพแบบ Sprite

เทพดาภาพเป็นคอลเลกชันของภาพที่ใส่ลงไปในภาพเดียว

หน้าเว็บที่มีภาพจำนวนมากสามารถใช้เวลานานในการโหลดและสร้างการร้องขอเซิร์ฟเวอร์หลาย

การใช้ภาพแบบ Sprite จะช่วยลดจำนวนของการร้องขอเซิร์ฟเวอร์และประหยัดแบนด์วิดธ์


Sprites ภาพ - ตัวอย่างง่ายๆ

แทนการใช้สามแยกภาพเราใช้นี้ภาพเดียว ("img_navsprites.gif") :

ภาพนำทาง

ด้วย CSS เราสามารถแสดงเพียงส่วนหนึ่งของภาพที่เราต้องการ

ในตัวอย่างต่อไป CSS ระบุซึ่งเป็นส่วนหนึ่งของ "img_navsprites.gif" ภาพที่จะแสดง:

ตัวอย่าง

#home {
    width: 46px;
    height: 44px;
    background: url(img_navsprites.gif) 0 0;
}
ลองตัวเอง»

ตัวอย่างอธิบายว่า:

  • <img id="home" src="img_trans.gif"> - กำหนดเพียงภาพโปร่งใสขนาดเล็กเพราะคุณลักษณะ src ต้องไม่ว่างเปล่า ภาพที่แสดงจะเป็นภาพพื้นหลังที่เราระบุใน CSS
  • width: 46px; height: 44px; width: 46px; height: 44px; - กำหนดส่วนของภาพที่เราต้องการใช้
  • background: url(img_navsprites.gif) 0 0; - กำหนดภาพพื้นหลังและตำแหน่ง (0px ซ้ายด้านบน 0px)

วิธีนี้เป็นวิธีที่ง่ายที่สุดที่จะใช้สไปรต์ภาพตอนนี้เราต้องการที่จะขยายได้โดยใช้การเชื่อมโยงและโฉบผลกระทบ


Sprites ภาพ - สร้างรายการการเดินเรือ

เราต้องการที่จะใช้ภาพเทพดา ("img_navsprites.gif") เพื่อสร้างรายการนำทาง

เราจะใช้รายการ HTML เพราะมันสามารถที่จะเชื่อมโยงและยังสนับสนุนภาพพื้นหลัง:

ตัวอย่าง

#navlist {
    position: relative;
}

#navlist li {
    margin: 0;
    padding: 0;
    list-style: none;
    position: absolute;
    top: 0;
}

#navlist li, #navlist a {
    height: 44px;
    display: block;
}

#home {
    left: 0px;
    width: 46px;
    background: url('img_navsprites.gif') 0 0;
}

#prev {
    left: 63px;
    width: 43px;
    background: url('img_navsprites.gif') -47px 0;
}

#next {
    left: 129px;
    width: 43px;
    background: url('img_navsprites.gif') -91px 0;
}
ลองตัวเอง»

ตัวอย่างอธิบายว่า:

  • #navlist {position:relative;} - ตำแหน่งถูกตั้งค่าให้ญาติที่จะอนุญาตให้ตำแหน่งแน่นอนภายในนั้น
  • #navlist li {margin:0;padding:0;list-style:none;position:absolute;top:0;} - อัตรากำไรขั้นต้นและ padding ตั้งค่าเป็น 0, รูปแบบรายการจะถูกลบออกและรายการทั้งหมดที่มีตำแหน่งที่แน่นอน
  • #navlist li, #navlist a {height:44px;display:block;} - ความสูงของภาพทั้งหมดที่มี 44px

ตอนนี้เริ่มต้นไปยังตำแหน่งและรูปแบบสำหรับแต่ละส่วนเฉพาะ:

  • #home {left:0px;width:46px;} - ตำแหน่งไปทางซ้ายและความกว้างของภาพที่เป็น 46px
  • #home {background:url(img_navsprites.gif) 0 0;} - กำหนดภาพพื้นหลังและตำแหน่ง (0px ซ้ายด้านบน 0px)
  • #prev {left:63px;width:43px;} - ตำแหน่ง 63px ไปทางขวา (#home 46px กว้าง + บางพื้นที่พิเศษระหว่างรายการ) และความกว้างเป็น 43px
  • #prev {background:url('img_navsprites.gif') -47px 0;} - กำหนด 47px ภาพพื้นหลังไปทางขวา (#home กว้าง 46px + 1px เส้นแบ่ง)
  • #next {left:129px;width:43px;} - ตำแหน่ง 129px ไปทางขวา (จุดเริ่มต้นของ #prev เป็น 63px + ความกว้าง #prev 43px + พื้นที่พิเศษ) และความกว้างเป็น 43px
  • #next {background:url('img_navsprites.gif') -91px 0;} - กำหนด 91px ภาพพื้นหลังไปทางขวา (#home กว้าง 46px + 1px เส้นแบ่งความกว้าง + #prev 43px + 1px เส้นแบ่ง)

ภาพแบบ Sprite - ผลกระทบเลื่อน

ตอนนี้เราต้องการที่จะเพิ่มผลโฉบไปยังรายการนำทางของเรา

บันทึก แนะนำ: :hover ตัวเลือกที่สามารถใช้กับองค์ประกอบทั้งหมดไม่เพียง แต่ในการเชื่อมโยง

ภาพใหม่ของเรา ("img_navsprites_hover.gif") มีสามภาพนำทางและสามภาพที่จะใช้สำหรับผลกระทบที่โฉบ:

ภาพนำทาง

เพราะนี่คือภาพเดียวและไม่หกแฟ้มที่แยกต่างหากจะมีความล่าช้าในการโหลดเมื่อผู้ใช้เลื่อนผ่านภาพ

เราเพียง แต่เพิ่มสามบรรทัดของรหัสที่จะเพิ่มผลโฉบ:

ตัวอย่าง

#home a:hover {
    background: url('img_navsprites_hover.gif') 0 -45px;
}

#prev a:hover {
    background: url('img_navsprites_hover.gif') -47px -45px;
}

#next a:hover {
    background: url('img_navsprites_hover.gif') -91px -45px;
}
ลองตัวเอง»

ตัวอย่างอธิบายว่า:

  • #home a:hover {background: transparent url('img_navsprites_hover.gif') 0 -45px;} - สำหรับทั้งสามภาพโฉบเราระบุตำแหน่งพื้นหลังเหมือนกันเพียง 45px ต่อไปลง