මා සතුව සීඑස්එස් කේතය ලිවිය යුතු අවස්ථාවක් තිබේ, මට නැංගුරමක හෝවර් ශෛලියක් යෙදීමට අවශ්යය.
a:hover
HTML විලාසිතාවේ ගුණාංගය තුළ පේළිගත CSS භාවිතා කරන්නේ කෙසේද?
උදා: ඔබට HTML ඊමේල් වල CSS පන්ති විශ්වාසදායක ලෙස භාවිතා කළ නොහැක.
මා සතුව සීඑස්එස් කේතය ලිවිය යුතු අවස්ථාවක් තිබේ, මට නැංගුරමක හෝවර් ශෛලියක් යෙදීමට අවශ්යය.
a:hover
HTML විලාසිතාවේ ගුණාංගය තුළ පේළිගත CSS භාවිතා කරන්නේ කෙසේද?
උදා: ඔබට HTML ඊමේල් වල CSS පන්ති විශ්වාසදායක ලෙස භාවිතා කළ නොහැක.
Answers:
කෙටි පිළිතුර: ඔබට බැහැ.
දිගු පිළිතුර: ඔබ නොකළ යුතුය.
එයට පන්ති නාමයක් හෝ හැඳුනුම්පතක් ලබා දී ශෛලිය යෙදීම සඳහා ස්ටයිල් ෂීට් භාවිතා කරන්න.
:hover
ව්යාජ තේරීම් කාරකයක් වන අතර, CSS සඳහා අර්ථය ඇත්තේ මෝස්තර පත්රය තුළ පමණි. පේළිගත ශෛලියට සමාන කිසිවක් නොමැත (එය තේරීමේ නිර්ණායක නිර්වචනය නොකරන බැවින්).
OP හි අදහස් වලට ප්රතිචාර:
CSS නීති ගතිකව එකතු කිරීම පිළිබඳ හොඳ පිටපතක් සඳහා ජාවාස්ක්රිප්ට් සමඟ සම්පුර්ණයෙන්ම Pwn CSS බලන්න . ස්ටයිල් ෂීට් වෙනස් කිරීමද බලන්නවිෂය පිළිබඳ සමහර න්යායන් සඳහා .
එසේම, අමතක නොකරන්න, ඔබට විකල්පයක් නම් බාහිර මෝස්තර සඳහා සබැඳි එක් කළ හැකිය. උදාහරණයක් වශයෙන්,
<script type="text/javascript">
var link = document.createElement("link");
link.setAttribute("rel","stylesheet");
link.setAttribute("href","http://wherever.com/yourstylesheet.css");
var head = document.getElementsByTagName("head")[0];
head.appendChild(link);
</script>
අවවාදයයි: ඉහත උපකල්පනය කරන්නේ ප්රධාන අංශයක් ඇති බවයි.
style="{color:green;} :hover { color: red; }"
අතර ෆයර්ෆොක්ස් සබැඳිය කොළ පාට කිරීමට සමත් වූ නමුත් එය නොසලකා හැරියෙමි. Chrome දෙකම නොසලකා හැරියේය. අඛණ්ඩව පරීක්ෂා කිරීම අර්ථ විරහිත වනු ඇත.
මූලද්රව්ය එකකට වඩා වෙනස් කිරීමට අවශ්ය නම් එය අතිශයින්ම අකාර්යක්ෂම වුවද, onMouseOver
සහ onMouseOut
පරාමිතීන්හි ජාවාස්ක්රිප්ට් සමඟ ඔබේ මෝස්තර වෙනස් කිරීමෙන් ඔබට එකම බලපෑමක් ලබා ගත හැකිය :
<a href="abc.html"
onMouseOver="this.style.color='#0F0'"
onMouseOut="this.style.color='#00F'" >Text</a>
එසේම, this
මෙම සන්දර්භය තුළ ක්රියාත්මක වේදැයි මට නිශ්චිතව මතක නැත . ඔබට එය මාරු කිරීමට සිදු විය හැකිය document.getElementById('idForLink')
.
<div onMouseOver="this.style.backgroundColor='#F8F8F8'" onMouseOut="this.style.backgroundColor='#FFFFFF'"> ...
අතීතයේ යම් අවස්ථාවක දී ඔබට එය කළ හැකිය . නමුත් දැන් (අපේක්ෂක නිර්දේශය වන එකම ප්රමිතියේ නවතම සංශෝධනයට අනුව) ඔබට බැහැ.
<a href="http://www.w3.org/" style="{color: #900} :link {background: #ff0} :visited {background: #fff} :hover {outline: thin red solid} :active {background: #00f}">...</a>
නමුත් එය ක්රියාත්මක වූයේ නැත
මම මේ සඳහා අතිශයින් ප්රමාද වී සිටිමි, කෙසේ වෙතත් කිසිවෙකු මෙය යෝජනා නොකිරීම ගැන මම කනගාටු වෙමි, ඔබට ඇත්ත වශයෙන්ම පේළිගත කේතයක් අවශ්ය නම් මෙය කළ හැකිය. සමහර හොවර් බොත්තම් සඳහා මට එය අවශ්ය විය, ක්රමය මෙයයි:
.hover-item {
background-color: #FFF;
}
.hover-item:hover {
background-color: inherit;
}
<a style="background-color: red;">
<div class="hover-item">
Content
</div>
</a
මෙම අවස්ථාවේ දී, පේළිගත කේතය: "පසුබිම්-වර්ණය: රතු;" හෝවර් මත ස්විච් වර්ණය, ඔබට අවශ්ය වර්ණය එහි දමා මෙම විසඳුම ක්රියාත්මක වේ. ගැළපුම අනුව මෙය පරිපූර්ණ විසඳුමක් නොවන බව මම තේරුම් ගතිමි.
ඔබ විස්තර කරන දේ හරියටම කළ නොහැක, මන්ද a:hover
තේරීම් කාරකයේ කොටසක් මිස CSS නීති නොවේ. මෝස්තර පත්රිකාවට සංරචක දෙකක් ඇත:
selector {rules}
පේළිගත මෝස්තරවලට ඇත්තේ නීති පමණි; තේරීම් කාරකය වත්මන් අංගය ලෙස ගම්ය වේ.
තේරීම් කාරකය යනු එක්ස්එම්එල් වැනි ලේඛනයක මූලද්රව්යයන්ට ගැලපෙන නිර්ණායක සමූහයක් විස්තර කරන ප්රකාශන භාෂාවකි.
කෙසේ වෙතත්, ඔබට සමීප විය හැකිය, මන්ද style
කට්ටලයක් තාක්ෂණිකව ඕනෑම තැනකට යා හැකි බැවිනි :
<html>
<style>
#uniqueid:hover {do:something;}
</style>
<a id="uniqueid">hello</a>
</html>
<html> </html>
ටැගයක් යටතේ
අ) පේළිගත ශෛලිය එක් කිරීම
document.head.insertAdjacentHTML('beforeend', '<style>#mydiv:hover{color:red;}</style>');
b) හෝ ටිකක් අමාරු ක්රමයක් - "මූසිකය" එකතු කිරීම
document.getElementById("mydiv").onmouseover= function(e){this.className += ' my-special-class'; };
document.getElementById("mydiv").onmouseleave= function(e){this.className = this.className.replace('my-special-class',''); };
සටහන: font-size
ජාවාස්ක්රිප්ට් හි බහු වචන ශෛලීන් (එනම් ) එකට ලියා ඇත :
element.style.fontSize="12px"
හොඳම කේත උදාහරණය මෙයයි:
<a
style="color:blue;text-decoration: underline;background: white;"
href="http://aashwin.com/index.php/education/library/"
onmouseover="this.style.color='#0F0'"
onmouseout="this.style.color='#00F'">
Library
</a>
උපපරිපාලක වරු යෝජනාව: ඔබගේ උත්සුකයන් වෙන් කර තබා ගන්න.
HTML
<a
style="color:blue;text-decoration: underline;background: white;"
href="http://aashwin.com/index.php/education/library/"
class="lib-link">
Library
</a>
ජේ
const libLink = document.getElementsByClassName("lib-link")[0];
// The array 0 assumes there is only one of these links,
// you would have to loop or use event delegation for multiples
// but we won't go into that here
libLink.onmouseover = function () {
this.style.color='#0F0'
}
libLink.onmouseout = function () {
this.style.color='#00F'
}
සීඑස්එස් හි වර්තමාන පුනරාවර්තනය සඳහා පේළිගත ව්යාජ පංති ප්රකාශන සඳහා සහය නොදක්වයි (කෙසේ වෙතත්, මා තේරුම් ගත් පරිදි, එය අනාගත අනුවාදයකින් පැමිණිය හැකිය).
දැනට, ඔබේ හොඳම ඔට්ටුව වන්නේ ඔබට විලාසිතාවට අවශ්ය සබැඳියට ඉහළින් කෙළින්ම විලාසිතාවක් අර්ථ දැක්වීම ය:
<style type="text/css">
.myLinkClass:hover {text-decoration:underline;}
</style>
<a href="/foo" class="myLinkClass">Foo!</a>
පෙන්වා දී ඇති පරිදි, ඔබට හෝවර් සඳහා අත්තනෝමතික පේළි සැකසිය නොහැක, නමුත් ඔබට සුදුසු ටැගයේ පහත සඳහන් දෑ භාවිතා කරමින් CSS හි හෝවර් කර්සරයේ විලාසය වෙනස් කළ හැකිය :
style="cursor: pointer;"
<style>a:hover { }</style>
<a href="/">Go Home</a>
හොවර් යනු ව්යාජ පංතියක් වන අතර එමඟින් ශෛලීය ලක්ෂණයක් සමඟ යෙදිය නොහැක. එය තේරීම් කාරකයේ කොටසකි.
ඔබට මෙය කරන්න පුළුවන්. නමුත් පේළිගත මෝස්තර වලින් නොවේ. ඔබට භාවිතා කළ හැකි onmouseover
සහ onmouseout
සිදුවීම්:
<div style="background: #333; padding: 10px; cursor: pointer"
onmouseover="this.style.backgroundColor='#555';" onmouseout="this.style.backgroundColor='#333';">
Hover on me!
</div>
ඔබගේ අදහස් වලට අනුව, ඔබ කෙසේ හෝ ජාවාස්ක්රිප්ට් ගොනුවක් යවයි. ජාවාස්ක්රිප්ට් හි පෙරළීම කරන්න. අනෙක් සෑම ජාවාස්ක්රිප්ට් එතීම මෙන් jQuery හි $.hover()
ක්රමය පහසු කරයි. Java ජාවාස්ක්රිප්ට් වලද එය එතරම් අපහසු නැත.
මම වෙනස් විසඳුමක් හදුනා ගත්තා.
මගේ ගැටළුව: <a>
සමහර විනිවිදක / ප්රධාන අන්තර්ගත නරඹන්නා වටා ටැගයක් මෙන්ම <a>
පාදකයේ ටැග් ද ඇත. මට අවශ්ය වන්නේ ඔවුන් IE හි එකම ස්ථානයකට යාමටයි, එබැවින් onHover
ඔවුන් සබැඳි නොවුනත් මුළු ඡේදයම ඉස්මතු වනු ඇත : සමස්තයක් ලෙස විනිවිදකය සබැඳියකි. IE වෙනස දන්නේ නැහැ. මගේ පාදකයේ යටි ඉරි සහ වර්ණ වෙනස් කිරීම අවශ්ය වන සත්ය සබැඳි කිහිපයක් ද මා සතුව ඇත onHover
. වර්ණ වෙනස් කිරීම සඳහා පාදක ටැග් සමඟ මෝස්තර තැබිය යුතු යැයි මම සිතුවෙමි, නමුත් ඉහත උපදෙස් වලින් පෙනී යන්නේ මෙය කළ නොහැකි බවයි.
විසඳුම: මම පාදක සබැඳි විවිධ පන්ති දෙකක් ලබා දුන් අතර මගේ ගැටළුව විසඳුණි. onHover
එක් පන්තියක වර්ණ වෙනස් කිරීමට මට හැකි විය , විනිවිදකවල onHover
වර්ණ වෙනසක් / යටි ඉරි ඇඳීමක් නොතිබුණි, සහ තවමත් පාදයේ සහ විනිවිදකවල බාහිර HREFS එකම වේලාවක තබා ගැනීමට හැකි විය!
මම සෙවනැල්ල සමඟ එකඟ වෙමි . ජාවාස්ක්රිප්ට් හරහා CSS වෙනස් කිරීමට ඔබට onmouseover
සහ onmouseout
සිද්ධිය භාවිතා කළ හැකිය.
ජාවාස්ක්රිප්ට් සක්රීය කිරීමට මිනිසුන්ට අවශ්ය යැයි නොකියන්න. එය විලාසිතාවේ ප්රශ්නයක් පමණි, එබැවින් ජාවාස්ක්රිප්ට් නොමැතිව සමහර අමුත්තන් සිටීද යන්න ගැටළුවක් නොවේ;) බොහෝ වෙබ් 2.0 ජාවාස්ක්රිප්ට් සමඟ ක්රියා කළද . බලන්න ෆේස්බුක් උදාහරණයක් (ජාවාස්ක්රිප්ට් ගොඩක්) හෝ Myspace .
මෙය ක්රීඩාවේ ප්රමාද වැඩියි, නමුත් ඔබ HTML විද්යුත් තැපෑලක ජාවාස්ක්රිප්ට් භාවිතා කරන්නේ කවදාද? උදාහරණයක් ලෙස, මම දැනට සේවය කරන සමාගමෙහි (ඇබොඩී සමඟ රයිම්), බොහෝ විද්යුත් තැපැල් අලෙවිකරණ ව්යාපාර සඳහා අපි අඩුම පොදු හරය භාවිතා කරමු - සහ ජාවාස්ක්රිප්ට් භාවිතා නොකෙරේ. කවදා හෝ. ඔබ යම් ආකාරයක පෙර සැකසුම් ගැන සඳහන් නොකරන්නේ නම්.
අදාළ පෝස්ට් එකක සඳහන් කර ඇති පරිදි: "නෙළුම් සටහන්, මොසිල්ලා තණ්ඩර්බර්ඩ්, අවුට්ලුක් එක්ස්ප්රස් සහ වින්ඩෝස් ලයිව් මේල් සියල්ලම යම් ආකාරයක ජාවාස්ක්රිප්ට් ක්රියාත්මක කිරීමට සහාය දක්වන බව පෙනේ. වෙන කිසිවක් නැත."
මෙය ලබාගත් ලිපියට සබැඳිය: [ http://en.wikipedia.org/wiki/Comparison_of_e-mail_clients]
එසේම, සැරිසැරීම ජංගම උපාංගවලට පරිවර්තනය කරන්නේ කෙසේද? ඉහළ සිට පිළිතුරට මා කැමති වන්නේ එබැවිනි.Long answer: you shouldn't.
යමෙකුට මෙම විෂය පිළිබඳ වැඩි අවබෝධයක් තිබේ නම්, කරුණාකර මාව නිවැරදි කිරීමට නිදහස් වන්න. ඔබට ස්තුතියි.
එබැවින් මෙය පරිශීලකයා සොයන තරමට නොවේ, නමුත් මම මෙම ප්රශ්නයට පිළිතුරක් සොයමින් හමු වූ අතර ඒ හා සම්බන්ධ යමක් ඉදිරිපත් කළෙමි. ඒවා තුළ ටැබ් එකක් සඳහා නව වර්ණයක් / සැරිසැරීමක් අවශ්ය වන පුනරාවර්තන අංග රාශියක් මා සතුව තිබුණි. මම හසුරුව භාවිතා කරමි, එය මගේ විසඳුමට ප්රධාන වේ, නමුත් වෙනත් සැකිලි භාෂා ද ක්රියා කරයි.
මම වර්ණ කිහිපයක් නිර්වචනය කර ඒවා එක් එක් මූලද්රව්යය සඳහා හැන්ඩ්බාර් අච්චුවට ඇතුළත් කළෙමි. අච්චුවේ ඉහළින්ම මම විලාසිතාවේ ටැගයක් නිර්වචනය කර මගේ අභිරුචි පන්තියට දමා වර්ණ වර්ණය කරන්න.
<style type="text/css">
.{{chart.type}}-tab-hover:hover {
background-color: {{chart.chartPrimaryHighlight}} !important;
}
</style>
ඉන්පසු මම අච්චුවේ ශෛලිය භාවිතා කළෙමි:
<span class="financial-aid-details-header-text {{chart.type}}-tab-hover">
Payouts
</span>
ඔබට අවශ්ය නොවනු ඇත !important
ඔබට විවිධ වර්ගයේ කේතයක් ලිවිය හැකිය
මුලින්ම මට මෙය ලිවිය හැකිය
html
<a href="https://www.google.com/" onMouseOver="this.style.color='red'"
onMouseOut="this.style.color='blue'" class="one">Hello siraj</a>
css
.one{
text-decoration: none;
}
ඔබට වෙනත් ක්රමයක් උත්සාහ කළ හැකිය
html
<a href="https://www.google.com/" class="one">Hello siraj</a>
css
.one{
text-decoration: none;
}
.one:hover{
color:blue;
}
.one:active{
color: red;
}
ඔබට jquery හි සැරිසැරීමට උත්සාහ කළ හැකිය
java ස්ක්රිප්ට්
$(document).ready(function(){
$("p").hover(function(){
$(this).css("background-color", "yellow");
}, function(){
$(this).css("background-color", "pink");
});
});
html
<p>Hover the mouse pointer over this paragraph.</p>
මෙම කේතයේ ඔබට jquery හි ශ්රිත තුනක් ඇත, පළමුව ඔබ jquery හි ක්රියාකාරීත්වයේ මූලික වන ශ්රිතයක් සූදානම් කළ අතර දෙවනුව ඔබ මෙම ශ්රිතයේ හෝවර් ශ්රිතයක් පෙළට යොමු කළ විට ඔබ පෙළට දර්ශකයක් එබූ විට වර්ණය වෙනස් වන අතර ඊළඟට ඔබ දර්ශකය පෙළට මුදා හරින විට එය වෙනස් වර්ණයක් වනු ඇති අතර මෙය තුන්වන ශ්රිතය වේ
මට ජාවාස්ක්රිප්ට් වළක්වා ගැනීමට සිදු විය, නමුත් සේවාදායක පැත්තේ කේතය සමඟ යා හැකිය.
ඒ නිසා මම හැඳුනුම්පතක් ජනනය කළා, ස්ටයිල් බ්ලොක් එකක් නිර්මාණය කළා, එම හැඳුනුම්පත සමඟ සබැඳිය ජනනය කළා. ඔව් එහි වලංගු HTML.
a {
text-decoration: none;
color: blue;
}
a:hover {
color: blue;
font-weight: bold;
}
<!-- some code in the interpreter you use, to generate the data-hover id -->
<style>
a[data-hover="rnd-id-123"] { color: green; }
a[data-hover="rnd-id-123"]:hover { color: red; }
</style>
<a data-hover="rnd-id-123">some link 1</a>
<br>
<!-- some code in the interpreter you use, to generate the data-hover id -->
<style>
a[data-hover="rnd-id-456"] { color: purple; }
a[data-hover="rnd-id-456"]:hover { color: orange; }
</style>
<a data-hover="rnd-id-456">some link 2</a>
ව්යාජ පන්තිය a:hover
බාහිර විලාසිතාවේ තහඩු වලින් පමණක් භාවිතා කළ හැකිය . එබැවින් බාහිර මෝස්තර පත්රිකාවක් භාවිතා කිරීමට මම නිර්දේශ කරමි. කේතය:
a:hover {color:#FF00FF;} /* Mouse-over link */
style
ටැගය භාවිතා කරන්න .
මගේ ගැටළුව වූයේ මම රූපයක්-නිරූපක විශාල ප්රමාණයක් භාවිතා කරන වෙබ් අඩවියක් තැනීමයි. එය වෙනත් රූපයකින් හෝවර් මත මාරු කළ යුතුය (උදා: නිල්-ඊෂ් රූප රතු-ඊෂ් හොවර් මත හැරේ). මේ සඳහා මම පහත විසඳුම ඉදිරිපත් කළෙමි:
.container div {
width: 100px;
height: 100px;
background-size: 100px 100px;
}
.container:hover .withoutHover {
display: none;
}
.container .withHover {
display: none;
}
.container:hover .withHover {
display: block;
}
<p>Hover the image to see it switch with the other. Note that I deliberately used inline CSS because I decided it was the easiest and clearest solution for my problem that uses more of these image pairs (with different URL's).
</p>
<div class=container>
<div class=withHover style="background-image: url('https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcQrqRsWFJ3492s0t0NmPEcpTQYTqNnH188R606cLOHm8H2pUGlH')"></div>
<div class=withoutHover style="background-image: url('http://i.telegraph.co.uk/multimedia/archive/03523/Cat-Photo-Bombs-fa_3523609b.jpg')"></div>
</div>
රූප යුගල අඩංගු කන්ටේනරයක් මම හඳුන්වා දුන්නා. පළමුවැන්න දෘශ්යමාන වන අතර අනෙක සැඟවී ඇත (දර්ශනය: කිසිවක් නැත). කන්ටේනරයෙහි සැරිසරන විට, පළමුවැන්න සැඟවී ඇත (දර්ශනය: කිසිවක් නැත) සහ දෙවැන්න නැවත දර්ශනය වේ (දර්ශනය: වාරණය).