field theme that have add more option
What you are wanting to do is re-theme cck's theme_content_multiple_values() call that creates the html table with the input on top instead of the bottom.  Quick and dirty in drupal 6 at least, I went into content.module and pulled out that function as well as the helper function that does the sort, copied them into my theme's template.php and named them appropriately with this being the result:

function YOURTHEME_content_multiple_values($element) {
  $field_name = $element['#field_name'];
  $field = content_fields($field_name);
  $output = '';

  if ($field['multiple'] &gt;= 1) {
    $table_id = $element['#field_name'] .'_values';
    $order_class = $element['#field_name'] .'-delta-order';
    $required = !empty($element['#required']) ? '&lt;span class="form-required" title="'. t('This field is required.') .'"&gt;*&lt;/span&gt;' : '';

    $header = array(
      array(
        'data' =&gt; t('!title: !required', array('!title' =&gt; $element['#title'], '!required' =&gt; $required)),
        'colspan' =&gt; 2
      ),
      t('Order'),
    );
    $rows = array();

    // Sort items according to '_weight' (needed when the form comes back after
    // preview or failed validation)
    $items = array();
    foreach (element_children($element) as $key) {
      if ($key !== $element['#field_name'] .'_add_more') {
        $items[] = &amp;$element[$key];
      }
    }
    usort($items, 'YOURTHEME_content_sort_items_value_helper'); // MOD 1

    // Add the items as table rows.
    foreach ($items as $key =&gt; $item) {
      $item['_weight']['#attributes']['class'] = $order_class;
      $delta_element = drupal_render($item['_weight']);
      $cells = array(
        array('data' =&gt; '', 'class' =&gt; 'content-multiple-drag'),
        drupal_render($item),
        array('data' =&gt; $delta_element, 'class' =&gt; 'delta-order'),
      );
      $rows[] = array(
        'data' =&gt; $cells,
        'class' =&gt; 'draggable',
      );
    }

    $output .= drupal_render($element[$element['#field_name'] .'_add_more']); // MOD 2
    $output .= theme('table', $header, $rows, array('id' =&gt; $table_id, 'class' =&gt; 'content-multiple-table'));
    $output .= $element['#description'] ? '&lt;div class="description"&gt;'. $element['#description'] .'&lt;/div&gt;' : '';


    drupal_add_tabledrag($table_id, 'order', 'sibling', $order_class);
  }
  else {
    foreach (element_children($element) as $key) {
      $output .= drupal_render($element[$key]);
    }
  }

  return $output;
}

function YOURTHEME_content_sort_items_value_helper($a, $b) {
  $a_weight = (is_array($a) &amp;&amp; isset($a['_weight']['#value'])) ? $a['_weight']['#value'] : 0;
  $b_weight = (is_array($b) &amp;&amp; isset($b['_weight']['#value'])) ? $b['_weight']['#value'] : 0;
  if ($a_weight == $b_weight) {
    return 0;
  }
  return ($a_weight &gt; $b_weight) ? -1 : 1; // MOD 3
}


There are only three modifications to the code:

MOD 1 : changed the second argument to point to "my" sort function instead of CCK's

MOD 2: moved the add-more button to display before the table instead of after it

MOD 3: changed &lt; to > to it sorts "backwards" from the default

Clear your theme registry cache and if all is well and good in the world of my thursday brain, you should now have your add more and enter buttons on top of the table instead of below.