ชุดของวิธีการที่เป็นไปได้ในการตั้งค่ารูปภาพจาก CSS
:after
องค์ประกอบเทียมของCSS2หรือไวยากรณ์ที่ใหม่กว่า::after
จากCSS3พร้อมด้วยcontent:
คุณสมบัติ:
คำแนะนำ W3C ครั้งแรก: สไตล์ชีทแบบเรียงซ้อนระดับ 2 ข้อมูลจำเพาะ CSS2 12 พฤษภาคม 2541
คำแนะนำ W3C ล่าสุด: ตัวเลือกระดับ 3 คำแนะนำ W3C 29 กันยายน 2554
วิธีการนี้จะต่อท้ายเนื้อหาหลังเนื้อหาเอกสารขององค์ประกอบ
หมายเหตุ: เบราว์เซอร์บางการทดลองทำให้content
คุณสมบัติโดยตรงกว่าบางเตอร์องค์ประกอบไม่คำนึงถึงแม้แต่คำแนะนำ W3C ล่าสุดที่กำหนด:
ใช้กับ: :before
และ:after
องค์ประกอบแบบหลอก
ไวยากรณ์ CSS2 (เข้ากันได้กับฟอร์เวิร์ด):
.myClass:after {
content: url("somepicture.jpg");
}
ตัวเลือก CSS3:
.myClass::after {
content: url("somepicture.jpg");
}
การแสดงผลเริ่มต้น: ขนาดดั้งเดิม (ไม่ได้ขึ้นอยู่กับการประกาศขนาดที่ชัดเจน)
ข้อมูลจำเพาะนี้ไม่ได้กำหนดการโต้ตอบของ: before และ: after ด้วยองค์ประกอบที่ถูกแทนที่ (เช่น IMG ใน HTML) จะมีการกำหนดรายละเอียดเพิ่มเติมในสเปคในอนาคต
แต่แม้ในขณะที่เขียนนี้พฤติกรรมที่มี<IMG>
แท็กยังคงไม่ได้กำหนดไว้และแม้ว่ามันจะสามารถนำมาใช้ในทางที่ถูกแฮ็กและมาตรฐานที่ไม่สอดคล้อง , การใช้งานด้วย<img>
ไม่แนะนำ !
วิธีการสมัครที่ยอดเยี่ยมดูข้อสรุป ...
background-image:
คุณสมบัติของ
CSS1 :
คำแนะนำ W3C ครั้งแรก: สไตล์ชีทซ้อนระดับ 1 17 ธันวาคม 2539
คุณสมบัตินี้ตั้งค่าภาพพื้นหลังขององค์ประกอบ เมื่อตั้งค่าภาพพื้นหลังหนึ่งควรตั้งค่าสีพื้นหลังที่จะใช้เมื่อภาพไม่พร้อมใช้งาน เมื่อรูปภาพพร้อมใช้งานจะมีการซ้อนทับด้านบนของสีพื้นหลัง
สถานที่ให้บริการนี้ได้รับรอบจากจุดเริ่มต้นของ CSS และอย่างไรก็ตามมันสมควรได้รับการกล่าวถึงอันรุ่งโรจน์
การแสดงผลเริ่มต้น: ขนาดดั้งเดิม (ไม่สามารถปรับขนาดได้เฉพาะตำแหน่ง)
อย่างไรก็ตาม ,
background-size:
คุณสมบัติของCSS3ได้รับการปรับปรุงให้ดีขึ้นโดยการอนุญาตให้ปรับขนาดได้หลายตัวเลือก
สถานะ W3C ล่าสุด: พื้นหลังและขอบเขต CSS คำแนะนำผู้สมัคร ระดับ 3 9 กันยายน 2014
[length> | <percentage> | auto ]{1,2} | cover | contain
แต่ถึงแม้จะมีคุณสมบัตินี้ก็ขึ้นอยู่กับขนาดของภาชนะ
ยังเป็นวิธีการสมัครที่ดีดูข้อสรุป ...
list-style:
คุณสมบัติของCSS2พร้อมกับdisplay: list-item
:
คำแนะนำ W3C ครั้งแรก: สไตล์ชีทแบบเรียงซ้อน, ข้อมูลจำเพาะ CSS2 ระดับ 2 12 พฤษภาคม 1998
list-style-image:
property กำหนดอิมเมจที่จะใช้เป็น marker item list (bullet)
คุณสมบัติของรายการอธิบายถึงการจัดรูปแบบรายการภาพพื้นฐาน: อนุญาตให้สไตล์ชีทระบุประเภทของตัวทำเครื่องหมาย ( รูปภาพสัญลักษณ์หรือหมายเลข)
display: list-item
- ค่านี้ทำให้องค์ประกอบ (เช่นเป็น<li>
HTML) เพื่อสร้างกล่องบล็อกหลักและกล่องทำเครื่องหมาย
.myClass {
display: list-item;
list-style-position: inside;
list-style-image: url("someimage.jpg");
}
CSS ชวเลข: ( <list-style-type> <list-style-position> <list-style-image>
)
.myClass {
display: list-item;
list-style: square inside url("someimage.jpg");
}
การแสดงผลเริ่มต้น: ขนาดดั้งเดิม (ไม่ได้ขึ้นอยู่กับการประกาศขนาดที่ชัดเจน)
ข้อ จำกัด:
การสืบทอดจะโอนค่า 'รายการสไตล์' จากองค์ประกอบ OL และ UL ไปยังองค์ประกอบ LI นี่เป็นวิธีที่แนะนำในการระบุข้อมูลสไตล์รายการ
พวกเขาไม่อนุญาตให้ผู้เขียนระบุสไตล์ที่แตกต่าง (สีแบบอักษรการจัดตำแหน่งฯลฯ ) สำหรับตัวทำเครื่องหมายรายการหรือปรับตำแหน่ง
วิธีนี้ยังไม่เหมาะกับ<img>
แท็กเนื่องจากไม่สามารถทำการแปลงระหว่างประเภทองค์ประกอบและนี่คือแฮ็คที่จำกัด และไม่เข้ากันได้และไม่ทำงานบน Chrome
วิธีการสมัครที่ดีดูข้อสรุป ...
คำแนะนำborder-image:
คุณสมบัติของCSS3 :
สถานะ W3C ล่าสุด: พื้นหลังและขอบเขต CSS คำแนะนำผู้สมัคร ระดับ 3 9 กันยายน 2014
พื้นหลังชนิดวิธีการที่อาศัยการระบุขนาดในลักษณะที่ค่อนข้างแปลกประหลาด(ไม่ได้กำหนดไว้สำหรับกรณีการใช้งานนี้)และคุณสมบัติชายแดนทางเลือกเพื่อให้ห่างไกล (เช่น. border: solid
):
โปรดทราบว่าแม้ว่าพวกเขาจะไม่ทำให้เกิดกลไกการเลื่อนภาพที่เริ่มต้นอาจยังคงถูกตัดโดยบรรพบุรุษหรือวิวพอร์ต
ตัวอย่างนี้แสดงให้เห็นภาพที่ถูกสร้างขึ้นเป็นมุมล่างขวาเท่านั้นตกแต่ง:
.myClass {
border: solid;
border-width: 0 480px 320px 0;
border-image: url("http://i.imgur.com/uKnMvyp.jpg") 0 100% 100% 0;
}
ใช้กับ: องค์ประกอบทั้งหมดยกเว้นองค์ประกอบตารางภายในเมื่อ border-collapse: collapse
ก็ยังไม่สามารถเปลี่ยน<img>
แท็ก 's src
( แต่ที่นี่เป็นสับ ) แทนเราสามารถตกแต่ง:
.myClass {
border: solid;
border-width: 0 96px 96px 0;
border-image: url("http://upload.wikimedia.org/wikipedia/commons/9/95/Christmas_bell_icon_1.png")
0 100% 100% 0;
}
<img width="300" height="120"
src="http://fc03.deviantart.net/fs71/f/2012/253/b/0/merry_christmas_card_by_designworldwide-d5e9746.jpg"
class="myClass"
วิธีการสมัครที่ดีจะได้รับการพิจารณาหลังจากเผยแพร่มาตรฐาน
CSS3 'selement()
ร่างการทำงานสัญกรณ์นั้นมีค่าควรแก่การกล่าวถึงด้วย:
หมายเหตุ: element()
ฟังก์ชั่นทำซ้ำลักษณะที่ปรากฏขององค์ประกอบอ้างอิงเท่านั้นไม่ใช่เนื้อหาจริงและโครงสร้าง
<div id="img1"></div>
<img id="pic1" src="http://i.imgur.com/uKnMvyp.jpg" class="hide" alt="wolf">
<img id="pic2" src="http://i.imgur.com/TOUfCfL.jpg" class="hide" alt="cat">
เราจะใช้เนื้อหาการแสดงผลของหนึ่งในสองภาพที่ซ่อนอยู่เปลี่ยนภาพพื้นหลังใน#img1
ขึ้นอยู่กับID เลือกผ่านทาง CSS:
#img1 {
width: 480px;
height: 320px;
background: -moz-element(#pic1) no-repeat;
background-size: 100% 100%;
}
.hide {display: none}
หมายเหตุ: เป็นการทดลองและใช้งานได้เฉพาะกับ-moz
คำนำหน้าใน Firefox และมากกว่าเท่านั้นbackground
หรือbackground-image
ยังต้องระบุขนาดด้วย
สรุปผลการวิจัย
- เนื้อหาความหมายหรือโครงสร้างข้อมูลใด ๆ ไปใน HTML
- ข้อมูลการออกแบบและการนำเสนอเป็นไปใน CSS
- เพื่อวัตถุประสงค์ SEO อย่าซ่อนภาพที่มีความหมายใน CSS
- กราฟิกพื้นหลังมักจะปิดการใช้งานเมื่อพิมพ์
- แท็กที่กำหนดเองสามารถนำมาใช้และสไตล์จาก CSS แต่ดั้งเดิมรุ่นของ Internet Explorer ไม่เข้าใจ] ( IE ไม่จัดแต่งทรงผมแท็ก HTML5 (กับชีฟ) ) โดยไม่ Javascript หรือ CSS คำแนะนำ
- สปา (แอปพลิเคชั่นหน้าเดียว) โดยการออกแบบมักจะรวมภาพในพื้นหลัง
ต้องบอกว่ามาสำรวจแท็ก HTML ที่เหมาะกับการแสดงภาพ:
<li>
องค์ประกอบ [HTML4.01 +]
กรณีที่สมบูรณ์แบบlist-style-image
ด้วยdisplay: list-item
วิธีการ
<li>
องค์ประกอบสามารถเป็นที่ว่างเปล่าช่วยให้เนื้อหาการไหลและจะได้รับอนุญาตได้ที่จะละเว้น</li>
แท็กสิ้นสุด
.bulletPics > li {display: list-item}
#img1 {list-style: square inside url("http://upload.wikimedia.org/wikipedia/commons/4/4d/Nuvola_erotic.png")}
#img2 {list-style: square inside url("http://upload.wikimedia.org/wikipedia/commons/7/74/Globe_icon_2014-06-26_22-09.png")}
#img3 {list-style: square inside url("http://upload.wikimedia.org/wikipedia/commons/c/c4/Kiwi_fruit.jpg")}
<ul class="bulletPics">
<li id="img1">movie</li>
<li id="img2">earth</li>
<li id="img3">kiwi</li>
</ul>
ข้อ จำกัด : ยากต่อสไตล์ ( width:
หรือfloat:
อาจช่วยได้)
<figure>
องค์ประกอบ [HTML5 +]
องค์ประกอบรูปที่แสดงถึงเนื้อหาการไหลบางส่วนเลือกที่มีคำบรรยายภาพที่อยู่ในตัวเอง (เช่นประโยคที่สมบูรณ์) และโดยทั่วไปจะมีการอ้างอิงเป็นหน่วยเดียวจากการไหลหลักของเอกสาร
องค์ประกอบที่ถูกต้องที่มีเนื้อหาไม่ <figcaption>
แต่จะแนะนำให้มี
องค์ประกอบนี้สามารถใช้ในการใส่คำอธิบายประกอบภาพประกอบไดอะแกรมรูปภาพรายการรหัส ฯลฯ
การเรนเดอร์เริ่มต้น: องค์ประกอบนั้นจัดชิดขวาทั้งซ้ายและขวาแพ็ด!
<object>
องค์ประกอบ [HTML4 +]
ในการรวมรูปภาพผู้แต่งอาจใช้องค์ประกอบ OBJECT หรือองค์ประกอบ IMG
ต้องdata
ระบุแอตทริบิวต์และสามารถมีประเภท MIME ที่ถูกต้องเป็นค่า!
<object data="data:x-image/x,"></object>
หมายเหตุ: เคล็ดลับในการใช้ประโยชน์จาก<object>
แท็กจาก CSS คือการตั้งค่า MimeType ที่ถูกต้องที่กำหนดเองx-image/x
ตามด้วยไม่มีข้อมูล (ค่าไม่มีข้อมูลหลังจากเครื่องหมายจุลภาคที่จำเป็น,
)
การแสดงผลเริ่มต้น: 300 x 150px แต่สามารถระบุขนาดได้ใน HTML หรือ CSS
ต้องการเบราว์เซอร์ที่ทำงานได้SVG และมี <image>
องค์ประกอบสำหรับภาพแรสเตอร์
<canvas>
องค์ประกอบ [HTML5 +]
width
แอตทริบิวต์เริ่มต้นที่300และheight
ค่าเริ่มต้นแอตทริบิวต์150
<input>
องค์ประกอบด้วยtype="image"
ข้อ จำกัด :
... องค์ประกอบนั้นคาดว่าจะมีลักษณะคล้ายปุ่มเพื่อระบุว่าองค์ประกอบนั้นเป็นปุ่ม
Chrome ตัวใดที่ติดตามและแสดงผลสี่เหลี่ยมจัตุรัสขนาด 4x4px เมื่อไม่มีข้อความ
โซลูชันบางส่วนชุดvalue=" "
:
<input type="image" id="img1" value=" ">
ระวัง<picture>
องค์ประกอบที่จะเกิดขึ้นในHTML5.1ซึ่งเป็นร่างที่ใช้งานได้ในปัจจุบัน