Web Listbox Lock Handles Not Working

I have been wrestling with this all afternoon and wonder whether anyone else has come across this, and what may be the issue.

I have a number of web pages in an app, and I have list boxes on them and all work fine, except on a new page I have created this afternoon. On this new page, the listbox lock handles, top, left, right and bottom do not appear to be working as far as I can tell.

The listbox size is off the page bottom right. If I add some code in shown I can get it to conform

Me.top=Self.height-(10+Me.height)
Me.Left=Self.width-(10+Me.width)

The web page is 320 x 400, the listbox is 310,320 as this is mainly going to be run on a phone, but no matter what, the listbox does not show correctly, and it is off screen and too big for the page.

There is little code on the page, just one label, one listbox, one button (which is not visible - again appears off screen and if I hide the lisbox with visible=off, then button does not show anyway).

Its almost as if the web page is 'broken, and having recreated it all over again in a new page - still the same problem.

Again I can ‘fiddle’ the button and get id displayed with with;

//btnclose shown event
Me.top=Self.height-(10+Me.height)
Me.Left=Self.width-(10+Me.width)
//btnshown. Action event
webSystem.show
Self.close
//lbresults shown event
lbResults.heading(0)="No."
lbResults.heading(1)="Title"
lbResults.heading(2)="Cabinet"
lbResults.heading(3)="Checked"
lbResults.ColumnWidths="100,100,100,100" //again fiddled as it was 10%,60%,15%,* - but only first two columns 
//visible and the rest way off screen

Dim rs As RecordSet
rs=session.db.SQLSelect(thesql)

If rs<> Nil Then //macthes found
  
  While Not rs.eof
    lbResults.AddRow  ""
    lbResults.cell(lbResults.lastindex,0)=rs.field("PieceID").StringValue
    lbResults.cell(lbResults.lastindex,1)=rs.field("Title").StringValue
    lbResults.cell(lbResults.lastindex,2)=rs.field("CopiesCabinet").StringValue
    lbResults.cell(lbResults.lastindex,3)=fromsql(rs.field("LastChecked").StringValue)
    rs.MoveNext
    
  Wend
  
Else
  //nomatches found
   
End If
//webpage method constructor
// Calling the overridden superclass constructor.
// Note that this may need modifications if there are multiple constructor choices.
// Possible constructor calls:
// Constructor() -- From WebControl
// Constructor() -- From WebObject

thesql=syssql  //public variable copies the passsed 'syssql'
Super.Constructor

This is not the most complicated window I have built in this app, but it point blank refuses to work so it must be something I am missing, pointers would be great.

I have exported the ‘page’ if someone wants to look at its guts and see whats going on.

https://www.dropbox.com/s/t343wgfq0umnmip/webResults.xojo_code?dl=0