Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: CSS

Sivun loppuun

Aku2 [30.05.2006 15:25:38]

#

En nyt taida olla varma onko oikea alue kysellä, mutta kysytään nyt täällä.

Eli miten CSS:llä tehdään linkki, jossa linkin alla oleva solu muuttaa väriä, kun vie hiiren linkin päälle.

Eli kyse on taulukosta, jossa esim. kahdessa solussa linkit. Kun hiiren vie linkin päälle, niin solun taustaväri vaihtuu sekä solun border muuttu ykköseksi.

Javascriptillä tuon nyt osaan tehdä, mutta käytännössä tuo on mahdollista tehdä pelkällä tyylitiedostolla, joten se kiinnostaisi, miten se tehdään pelkällä tyylillä.

str4nd [30.05.2006 15:30:38]

#

td.jtn {
  background-color : rgb(255,255,255);
}
td.jtn:hover {
  background-color : rgb(125,125,125);
}
<td class="jtn">
  <a href="https://www.ohjelmointiputka.net/">Ohjelmointiputka</a>
</td>

kayttaja-2791 [30.05.2006 15:34:44]

#

Linkin alla oleva solu? Oikea järjestys on pistää solun sisään linkki. Ja IE ei tue :hover effektiä muille kuin linkeille, joten yhteensopivin tapa (tarpeesta riippuen tietenkin) on laittaa se linkki sen solun sisään, ja antaa linkille määre display: block, jolloin linkki täyttää koko solun sisällön.

Aku2 [30.05.2006 22:22:13]

#

str4nd:

Esimerkkisi ei ainakaan minulla toimi. (IE)
Firefoxilla taas toimii.

Onko jotain määrettä, jolla tuon saisi toimimaan myös IE:llä?


JTS:
Toki tarkoitin, että solun sisällä on linkki :)
Kokeilin myös tuota display blokkia, mutta sekää ei auttanut siihen, että sen olisin saanut toimimaan IE:llä.

Vinkkejä?

<table width="800" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td class="jtn"><a href="testi.htm">testi</a></td>
  </tr>
</table>
td.jtn {
  background-color : rgb(255,255,255);
}
td.jtn:hover {
  background-color : rgb(125,125,125);
}a:link {
	font-family: "Times New Roman", Times, serif;
	font-size: 12px;
	color: #0000CC;
	text-decoration: none;
	display: block;
}

Olga [30.05.2006 22:26:53]

#

Laita toki ainoastaan a { display: block; + muut määreet }. Nythän tuo tulee ainoastaan jos linkki on link-tilassa (ei visited, active, eikä hover).

Aku2 [31.05.2006 10:09:32]

#

Olga kirjoitti:

Laita toki ainoastaan a { display: block; + muut määreet }. Nythän tuo tulee ainoastaan jos linkki on link-tilassa (ei visited, active, eikä hover).

Juu, muut "linkkaukset" ei ole vielä tyylitetty, mutta ei kait niillä pitäisi olla tuohon mitään vaikutusta toimiiko se solun värin vaihto vai ei?

No. testaan kuitenkin.

Olga [31.05.2006 11:09:16]

#

Toki vaikuttaa. Ota CSS-tiedostosta pois nuo td-elementtien tyylitykset ja laita nuo kaikki linkkien tyylit sinne. Eli kärjistetysti

a {
    display: block;
}

a:link, a:visited {
    background: #ccc;
}

a:hover, a:active {
    background: #c60;
}

Eli tuo taustavärin vaihto tehdään toki tuolle linkille eikä tuolle td-elementille, sillä linkin display-määreen ollessa block, se täyttää koko solun kuten aiemmin JTS jo tuolla mainitsi.

Aku2 [31.05.2006 12:59:26]

#

ajatuksena on myös tehdä rajaukset kun linkin päälle vie hiirulaisen.
Eli ilmeisesti blokkia käyttämällä voi tehdä myös siten rajauksen? (Kuten solun rajat "border")

Voiko blokin kokoa määritellä vai onko se aina vaan tekstin koko?

Olga [31.05.2006 13:44:05]

#

Juu, toki voit linkille antaa borderit ja myös sen koon määritellä. Tuon koon kasvattaminen kannattaa tehdä antamalla linkille paddingia, sillä muistaakseni muuten tulee IE:llä jotain ongelmia.

HellCome [31.05.2006 13:51:07]

#

<html>
<body>
<style type="text/css">
a {
   display: block;
   width: 0px;
   padding-left: 20px;
   padding-right: 20px;
   padding-top: 20px;
   padding-bottom: 20px;
}

a:link, a:visited {
   background: pink;
}

a:hover, a:active {
   background: green;
}
</style>

<table border=0>
   <tr><td width="200px">
   <a href="foo">FOO</a>
   </td><td>
   Muuta tekstiä
   </td></tr>
</table>
</body>
</html>

Aku2 [01.06.2006 00:28:06]

#

Ok. Kiitokset kaikille vastanneille.
Paljon viisastuin ja saan varmaankin neuvoilla toteutettua halaumani.

PS. Ei kukaan tietäisi hyvää Suomenkielistä CSS kirjaa?

Olga [01.06.2006 00:40:59]

#

Seuraavaa on kovasti kehuttu, onhan Korpela yksi "guruista" :) Hintaa kyllä löytyy, mutta kannatanee katsoa wepin huutokaupoista + muista firmoista.

http://www.docendo.fi/?p=showproduct&product=951-846-195-3

temu92 [01.06.2006 01:01:49]

#

joo. ostin ton(75 €) ja hyvä on. suosittelen


Sivun alkuun

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta