2010-06-08 8 views
29

इसे अक्सर पूछा जाता है - लेकिन मैंने अभी तक एक अच्छा जवाब नहीं देखा है (और मैंने देखा)। यदि आप किसी तालिका पंक्ति में सीएसएस में पृष्ठभूमि छवि सेट करते हैं- छवि प्रत्येक सेल में खुद को दोहराएगी। यदि आप (पंक्ति के लिए) सेट करते हैं और background-image: none (कोशिकाओं के लिए) सेट करते हैं तो यह आईई पर समस्या हल करता है लेकिन क्रोम पर नहीं! मैं पृष्ठभूमि स्थिति का उपयोग नहीं कर सकता क्योंकि कई कॉल हैं और उनका आकार भिन्न होता है। (और चित्र symmetrical- नहीं है यह एक फीका एक तरफ से बाहर है किसी को सीएसएस कोड के लिएक्या हम बहु सेल टेबल में क्रोम में टेबल पंक्ति पृष्ठभूमि छवि समस्या को हल कर सकते हैं?

उदाहरण ??:।।

tr { height: 30px; position:relative;} 
tr.green { background: url('green_30.png') no-repeat left top; } 
tr.orange { background: url('oranger_30.png') no-repeat left top;} 
tr.red { background: url('red_30.png') no-repeat left top; } 
td { background-image: none; } 

एचटीएमएल बुनियादी है - एक बहु सेल तालिका

लक्ष्य प्रत्येक पंक्ति में अलग-अलग रंगों में फीका होना है, लेकिन यह कोई गैर-पैटर्न छवि हो सकती है।

+0

क्या आपके पास लाइव उदाहरण या कुछ सॉस मार्कअप/सीएसएस है? – Kyle

+1

ऐसा लगता है कि फ़ायरफ़ॉक्स एकमात्र ब्राउज़र है जो इस तरह व्यवहार करता है। क्रोम, आईई, ओपेरा और सफारी सभी पंक्तियों में पृष्ठभूमि-छवि को प्रत्येक पंक्ति में पुनरारंभ करने का कारण बनते हैं, बल्कि पूरी पंक्ति के लिए अच्छी तरह से निर्बाध बहने के बजाए। यह समस्या http://code.google.com/p/chromium/issues/detail?id=44361 पर सूचीबद्ध है लेकिन ऐसा लगता है कि यह ठीक नहीं होगा। –

+0

उबंटू 9 .10 पर, Google क्रोम 5.0.375.55 का उपयोग करके मेरे लिए ठीक काम करता है। http://jsfiddle.net/pzjUt/ और मैं क्या देखता हूं: http://img153.imageshack.us/img153/3521/resultm.png – jackocnr

उत्तर

11

ठीक है, मैंने इस बारे में पढ़ने में उम्र बिताई, और सभी ब्राउज़रों के लिए एक आसान फिक्स नहीं मिला, लेकिन जैसा कि मैंने देखें कि आप निश्चित ऊंचाई पंक्तियों का उपयोग कर रहे हैं, मैंने अपना खुद का कामकाज विकसित किया है: http://jsfiddle.net/DR8bM/

मूल रूप से, पंक्ति पर पृष्ठभूमि छवि डालने की बजाय, आप इसे प्रत्येक पंक्ति के पहले कक्ष में पूर्ण स्थान पर विभाजित करते हैं (और पूरी पंक्ति को भरने के लिए इसका विस्तार करते हैं)। यह थोड़ा हैकी है, लेकिन आप जो चाहते हैं उसे हासिल करने का एकमात्र विश्वसनीय तरीका हो सकता है।

+1

यह वास्तव में मेरी मदद की! बहुत बहुत धन्यवाद!! – Soph

4

फ्लोट जोड़ें: पंक्ति में बाईं ओर, इसे ठीक करना चाहिए।

tr {float:left;} 
+0

मेरे लिए काम किया। क्रोम और सफारी में समस्या हल हो गई; किसी भी समस्या का कारण नहीं है, जिसे मैं फ़ायरफ़ॉक्स और इंटरनेट एक्सप्लोरर में देख सकता हूं (जहां मूल समस्या मौजूद नहीं थी) – that0th3rGuy

+5

इस फ़िक्स को लागू करते समय, मैं अपनी सभी कॉलम चौड़ाई खो रहा हूं। केवल तभी काम करेगा यदि आपके पास चौड़ाई पूर्वनिर्धारित है !? – blo0p3r

+0

@ blo0p3r आप सही हैं। लेकिन यह एक प्रकार का फ्लेक्स शैली है: [मेरा कोडपेन देखें] (http://codepen.io/HerrSerker/pen/JEvHA) – HerrSerker

2

Windows 10 पर क्रोम 54 में परीक्षण किया गया:

tr { 
    background-attachment: fixed; 
} 

हालांकि ऐसा लगता है यह कीड़े के बिना नहीं है - पृष्ठभूमि छवि केवल loadtime पर व्यूपोर्ट, जिसका मतलब है भर में दोहराता है कि कोशिकाओं जब आप दिखाई देते हैं कि नीचे स्क्रॉल पृष्ठभूमि नहीं है।

+0

निचले हिस्से में टिप्पणी मेरी मदद करने में समाप्त हुई, धन्यवाद! – Ecko

संबंधित मुद्दे