yeah that should work
img means it will apply to all tags img tags, img.classname means it'll apply to all img tags that also have that class name.
just using .classname means you could place that class in a <p> tag and it'll still apply the style rules, whereas if you've explicitly stated it to only apply to img tags it wont.
It's useful to explicitly state tags when the css properties can act a little different depending upon the html tag (commonly block and inline elements behave differently, also some browsers have quirks, and there's an array of other reasons why this can be useful).
so you could do this
img.myclass{}
p.myclass{}
div.myclass{}
And then when you apply 'myclass' to elements, you can have individual rules explicitly set depending upon whether it's paragraph tag, or an image tag and so on. If that makes sense.
You can be as specific as you like, take for example this
div#navigation ul.leftnav li.selected{color:red}
div#navigation ol.leftnav li.selected{color:blue}
That would only apply to a list item (<li>) with the class 'selected' if it's contained within and unordered list (<ul>) that has the class leftnav that's contained within a div that has a id of 'navigation'
So it would apply red selection to this
<div id="navigation">
<ul class="leftnav">
<li>Item</li>
<li class="selected">This would be red</li>
<li>Item</li>
<li>Item</li>
</ul>
</div>
and a blue selection to this
<div id="navigation">
<ol class="leftnav">
<li>Item</li>
<li class="selected">This won't be red, it'll be blue</li>
<li>Item</li>
<li>Item</li>
</ol>
</div>
but would have no effect on this
<div id="navigation">
<ol class="rightnav">
<li>Item</li>
<li class="selected">This won't be red, or blue</li>
<li>Item</li>
<li>Item</li>
</ol>
</div>
whereas if you just used
li.selected{color:green}
all the list items with the class 'selected' would be green.
Hope that makes some sense?
the . represents that it's a class style, and if you use a # it represents it's a unique id.
You can't put spaces in class names, because when using a class in elements, you can apply as many classes as you like.
Say we take this simple css
.right{float:right}
.left{float:left}
.red{color:red}
.bold{font-weight:bold}
and this html
<p class="right red bold">Text</p>
<p class="left red">Text</p>
The first paragraph with be floated to the right, with bold red text.
The second, will be floated to the left, with normal red text.
Using multiple classes in element can be extremely useful for setting out common parameters (like floats and widths).